性能测试常见误区
选自《Web性能测试实战》
配套性能测试课程:
1、LoadRunner性能测试入门与虚拟用户开发基础(点击进入)
2、LoadRunner Controller使用基础(点击进入)
请看下面一个性能测试小案例:
某公司OA产品的新版本即将发布。为了看看系统的性能,决定安排测试工程师A君执行性能测试任务。A君做法如下:<?xml:namespace prefix = o />
1. 找到一台PC机,CPU主频1G,内存512M,……;
2. 在找到的PC机上搭建了测试环境:安装了Oracle9i、Weblogic等系统软件;
3. 在自己的工作机上安装了LoadRunner7.8;
4. 然后录制了登陆、发布公告等功能;
5. 开始设置30、50、100、500不同的并发用户数目进行并发;
6. 最后得出结论:系统只能运行80个左右的并发用户……。
无疑上面的做法存在很多不合理的地方,例如测试内容太少、测试服务器配置太低等。现实工作中,尽管性能测试以其在测试中独特的地位越来越为软件测试人员、开发人员和用户所重视,但是不管是测试人员还是开发人员,仍然在认识上存在这样或者那样的误区。
误区1:提高一下硬件配置就可以提高性能了,因此性能测试不重要。
这是以前系统规模不大时期留下来的认识。DOS时代以及后来Windows操作系统流行的初期,软件规模一般较小,而硬件的更新却是日新月异,软件性能一般不是突出问题,因为只要升级一下硬件,很容易就解决了性能问题。
现在随着软件规模的扩大,提高硬件配置只是解决性能问题的一个基本手段。因为如果软件自身存在性能问题,再多的资源可能也不够用,例如内存泄漏问题,随着时间的增加,内存终究会被耗尽,最后导致系统崩溃。
因此,如果用户对软件的性能要求较高,这将意味着不但要从硬件方面来提供性能,还要从数据库、WebServer、操作系统配置等方面入手来提高性能,同时开发的软件系统本身也要进行优化,以便全面提高性能。
误区2:性能测试在所有其它测试完成后,测试一下看看就可以了。
这是目前特别普遍的一种现象,例如前面的A君,这种现象主要是没有意识到性能测试的重要性。这种做法最严重的后果是如果性能问题是由软件系统本身产生的,可能会无法根治性能问题。例如架构设计方面的失误,可能意味着软件系统将被废掉。
当然这并不意味所有的性能测试都要尽早进行,性能测试的启动时间要由软件特点来决定。性能测试策略的制定问题可以参考《程序员》2005第10、11期的《治疗软件亚健康》。
误区3:性能测试独立于功能测试。
功能测试可以发现性能问题,性能测试也能发现功能问题。性能测试和功能测试是紧密联系在一起的,原因之一是由于很多性能问题是由软件自身功能缺陷引起的。如果应用系统功能不完善或者代码运行效率低下,通常会带来一些性能问题。功能测试通常要先于性能测试执行或者同步进行,软件功能完善可以保证性能测试进行得更加顺利。
误区4:性能测试就是用户并发测试。
仍然有很多人(尤其是开发人员和部分项目实施人员)一提到性能测试,就会联想到并发用户测试,进而认为性能测试就是“测试一下多用户的并发情况”。严格地讲,性能测试是以用户并发测试为主的测试。实际性能测试还包含强度测试、大数据量测试等许多内容。
误区5:在开发环境下进行一下性能测试就可以了。
很多时候,在软件开发完成后会进行性能测试,看一看软件的性能。实际上大多数的开发环境因为硬件条件比较差,所以反映不了过多的性能问题。
因此性能测试要尽量在高配置的用户投产环境下进行。但是有两种可以例外的情况:一种是为了发现某些功能方面的问题,例如为了发现并发算法的一些缺陷;另外一种就是有非常好的硬件资源或者实验室作为开发环境。
误区6:系统存在瓶颈,不可以使用。
系统发现了瓶颈,的确是很让人担心的一件事情。不过不要紧,很多的瓶颈可以不必去理会。发现瓶颈的目的主要是为了掌握系统特性,为改善和扩展系统提供依据。因此在性能方面给系统留有30%左右的扩展空间就可以了。
例如,1000个用户并发时发现了系统瓶颈,而客户的最大并发用户数量在500左右,这样的性能问题完全没有必要处理,要是550或者600个并发用户出现性能问题就应该认真地调整系统性能了。
误区7:不切实际的性能指标。
这种现象主要归结于对软件应用需求的不了解。很多时候,尤其是用户会提出很多不切实际的性能指标,例如,针对500个用户使用的OA系统,可能有的用户负责人会提出要满足100个甚至500个用户并发的性能目标,而实际并发数量不会高于50。这种情况只有和用户进行沟通才可以解决。
上面列举的都是日常性能测试工作中相关人员常犯的错误,这些观点只在极其特殊的情况下才正确。希望读者了解这些常见的性能测试误区后,能在以后的工作中避免类似的情况。
分享到:
相关推荐
以下是一些常见的性能测试误区及其详细解析: 1. 误区一:提高硬件配置就能解决性能问题,性能测试不重要。这种观点源于早期软件规模较小的时代,那时硬件升级往往能有效提升性能。如今,随着软件复杂度增加,硬件...
软件测试性能测试常见误区[1]软件测试误区1:提高一下硬件配置就可以提高性能了,因此性能测试不重要。这是以前系统规模不大时期留下来的认识。DOS时代以及后来Windows操作系统流行的初期,软件规模一般较小,而硬件...
性能测试常见误区[2]软件测试误区5:在开发环境下进行一下性能测试就可以了。很多时候,在软件开发完成后会进行性能测试,看一看软件的性能。实际上大多数的开发环境因为硬件条件比较差,所以反映不了过多的性能问题...
性能测试常见误区[1]软件测试请看下面一个性能测试小案例:某公司OA产品的新版本即将发布。为了看看系统的性能,决定安排测试工程师A君执行性能测试任务。A君做法如下:1.找到一台PC机,CPU主频1G,内存512M,……;2...
然而,新手在进行性能测试时常常会陷入误区,其中一个常见的问题就是错误地模拟百万级别的测试数据,导致测试结果无效。以下是对这一问题的深入探讨。 首先,测试数据的重要性在于它必须尽可能地模拟生产环境,以...
本书第1章介绍了性能测试基础知识和性能测试常见的误区。第2章专门针对Web性能测试提出了“Web全面性能测试模型”,把制订性能测试策略、编写测试用例计划以及使用模型的方法融会在一起,提供了规划与设计性能测试的...
【Oracle数据库性能调整误区】 Oracle数据库作为广泛应用的关系型数据库,其性能优化对于医院信息系统乃至其他领域的关键业务至关重要...避免这些常见误区,结合实际业务场景,才能有效提升数据库的运行效率和稳定性。
性能测试中常见的误区包括: - 认为性能测试主要就是测试工具的使用:实际上,性能测试的成功更依赖于对测试目的的理解和测试方案的设计。 - 认为测试工具可以自动生成所需报表:虽然现代测试工具提供了丰富的数据...
1. **测试是找出所有错误**:一个常见的误区是认为测试的目标是找出软件中的所有缺陷。实际上,测试是为了验证软件是否满足预定的需求和功能,而完全消除所有错误几乎是不可能的。测试更多的是风险管理,确保主要的...
在此,我们将重点讨论MSA(测量系统分析)和SPC(统计过程控制)在新能源材料检测中的应用及其常见问题与误区。 **一、MSA(测量系统分析)** MSA是评估测量系统的可靠性和准确性的一种方法,确保测量结果不受测量...
避免常见陷阱与误区 - **忽略基础性能指标**:如响应时间、吞吐量、错误率等。 - **缺乏全面测试计划**:仅关注特定功能而忽视整体性能。 - **不充分的数据收集**:未能准确记录和分析测试过程中产生的所有数据。 ...
随着新能源、汽车电子和材料化学等领域技术的迅猛发展,产品的安全性越来越受到重视。...通过对这些常见误区的澄清,可以有效避免在产品安全性评估中可能出现的偏差,为消费者提供更安全、可靠的产品。
### 软件测试简介及其常见认识误区 #### 一、引言 随着信息技术的快速发展,软件已成为现代社会不可或缺的一部分。为了确保软件的质量和可靠性,软件测试变得尤为重要。本文旨在介绍软件测试的基本概念,并剖析...
本资料《软件性能测试从这里开始》由晏宾编写,详细介绍了性能测试的基本概念、目的、注意事项、误区以及未来发展趋势。以下是对其中主要内容的详细说明: **第 1 章 性能测试概论** 1. **简介**:性能测试是对...
### 电脑DIY常见误区详解 #### 一、前言 随着个人计算机技术的发展与普及,越来越多的用户开始尝试自己动手组装电脑(DIY),以此来满足个性化需求或是追求更高的性价比。然而,在DIY过程中,不少新手乃至有一定...
#### 1.3 性能测试常见认识误区 - **性能测试只是最后阶段的工作**:实际上,性能测试应该贯穿整个开发周期。 - **性能测试仅限于特定环境**:性能测试应该涵盖所有预期的部署环境。 - **性能问题容易解决**:很多...