软件测试专家详细解读剖析压力测试

发表于:2010-01-15来源:作者:点击数: 标签:软件测试解读专家剖析压力
软件测试 专家详细解读剖析压力测试 压力测试方法 概念之一【压力测试】来自Visual Studio 。NET 设计散布式应用顺序牢靠性测试:是指模仿伟大的任务负荷以检讨应用顺序在峰值应用状况下如何履行操作。对每个独自的组件进行压力测试后,应对带有其一切组件和

        软件测试专家详细解读剖析压力测试  压力测试方法 

    概念之一【压力测试】来自Visual Studio 。NET 设计散布式应用顺序牢靠性测试:是指模仿伟大的任务负荷以检讨应用顺序在峰值应用状况下如何履行操作。对每个独自的组件进行压力测试后,应对带有其一切组件和支撑效劳的全部应用顺序进行压力测试。集中测试从最基本的功用测试开端。您须要晓得编码途径和用户规划、理解用户试图做什么以及肯定用户应用您的应用顺序的一切方法。测试脚本应依据预期的用法运行应用顺序。例如,假如您的应用顺序显示 Web 页,而且 99% 的客户只是搜寻该站点,只要 1% 的客户将真正购置,这使得供给对搜寻和其余阅读功用进行压力测试的测试脚本才有意义。当然,也应对购物车进行测试,然而预期的应用暗示搜寻测试应在测试中占很大比重。

  概念之二【压力测试】来自。net应用顺序性能测试:压力测试用来评价在逾越最大负载的状况下体系将如何运行。压力测试的宗旨就是发明在高负载的条件下应用顺序的缺点(BUG)。包含:synchronization issues, race conditions, and memory leaks(内存走漏)。压力测试能让您辨认顺序的弱点和在极限负载下顺序将如何运行。

  概念之三【压力测试】压力测试重要是为了发明在一(恣意)定条件下软件体系的性能的变更状况。通过改变应用顺序的输出以对应用顺序施加越来越大的负载(并发,循环操作,多用户)并测量在这些不同的输出时性能的改变,也就是通常说的概念:压力测试考核以后软硬件环境下体系所能蒙受的最大负荷并赞助找出体系瓶颈所在。其实这种测试也可以称为负载测试,然而负载测试通常描写一种特定类型的压力测试——增添用户数量以对应用顺序进行压力测试。

  网上可以还有多于以上三种所描写的对压力测试这个名词的定义。

  我对照赞成第一种概念,压力测试应当是指模仿伟大的任务负荷以检讨应用顺序在峰值应用状况下如何履行操作。扩大开来说,其一压力测试应当是较短时光的,其次是模仿伟大的任务负荷的,再次压力测试是要使应用顺序的应用到达峰值。对这三点继承弥补,对第一点长时光的压力测试就改变成了负载测试;对第二点,对应用顺序施加的压力是超负荷的,所以要一直地加压;第三点,使应用顺序的应用到达峰值,假如逾越这个界线则应用顺序会瓦解或同伴率激增,这个峰值是针对某一时刻来说的,也是针对某个临界的压力来说的,改变为场景设置中的说法就是可以支撑的最大并发用户数。

  在最近的一次测试中定义了测试的目标是:须要理解AUT(被测应用顺序)个别可以蒙受的压力,同时可以蒙受的用户走访量(容量),最多支撑有多少用户同时走访某个功用。在AUT中抉择了用户最罕用的五个功用作为本次测试的内容,包含登录。大约的需求就是这样。

  接下来我AUT的登录说一说怎样用LoadRunner和Jmeter来完成场景的设置到达测试的目标。(注:对效劳器的检测不是本次测试的重点,本次测试重要搜集并发走访用户数和发作同伴用户数)。

  首先是对脚本的请求:

  1、录制脚本(注重一切的脚本都应录制到Action中),自定义事务,事务从提交用户名和口令的脚本之前开端;

  2、在定义事务开端的脚本前参加聚拢点;

  3、在脚本中参加检讨点,以登录胜利的页面涌现登录用户的ID即可;

  4、参数化登录用户的身份;

  其次是对场景设置的请求:

  1、由于事前咱们不晓得将有多少用户走访是临界点,所以在测试历程中须要屡次改变用户数来肯定;

  2、倡议修正运行时设置,优化对效劳器的走访;

  3、规划的设置,每x时光后加载10用户(依据总用户数设置),完整加载后连续运行不逾越5分钟(依据须要设置);

  4、聚拢战略,当运行中的用户数100%到达聚拢点时开释;

  5、注重事项,须要注重几个时光:1)效劳器响应超时时光;2)登录事务迭代一次所应用的时光;3)聚拢点期待超时时光;4)规划中设置的距离时光。在我的测试中事务运行一次的时光不逾越30秒,通过修正脚本使它的运行时光到达一分钟左右, 效劳器响应超时时光、联合点期待超时时光、规划中设置的距离时光都设置为了2分钟。

  这样场景开端运行后运行用户数呈阶梯增添,另外在每个回升点新增的用户都会随本来已经运行的用户并发走访效劳器。

  通过屡次的运行和对测试后果中正在运行用户数与同伴用户的对照,而后依据定义可接收同伴率就可得到该功用的最大并发走访的用户数。

  以上测试中消除了对网络、客户端等的请求。在实践测试中首先要保障这些资源是足够的。

  应用Jmeter也可以到达上述描写的场景的测试,并且更加的便捷。

原文转自:http://www.ltesting.net