软件性能测试工具原理

发表于:2010-11-19来源:作者:点击数: 标签:
软件性能 测试工具 原理 软件测试 一:性能测试工具模型 广义地说,性能测试工具是指性能 测试过程 中使用到所有工具,但是我们习惯上把“性能测试工具”定位于 LoadRunner 、 Silk Performer 一类的工具。 关于性能测试的几个误区: 1、认为性能测试就是使

  软件性能测试工具原理  软件测试

  一:性能测试工具模型

  广义地说,性能测试工具是指性能测试过程中使用到所有工具,但是我们习惯上把“性能测试工具”定位于LoadRunnerSilkPerformer一类的工具。

  关于性能测试的几个误区:

  1、认为性能测试就是使用性能测试工具进行测试。

  性能测试工具只能帮助你实施性能测试,并不能帮助你完成性能测试的需求、设计和分析。

  2、认为性能测试工具可以完成性能测试结果分析工作。

  性能测试工具只是能够根据你的要求以各种方式提供报表,这些报表可以被您用来分析系统性能状况。

  3、不清楚性能测试工具的录制/回放与功能测试工具的录制/回放的区别。

  功能测试工具的录制/回放一般是针对GUI的操作录制,脚本中记录的是用户对控件的操作,例如按下了“确认”按钮或是在“姓名文本框”中输入了ABCD等内容,这时因为功能测试工具主要是通过操作和数据来验证功能的正确性,评价的主要标准是GUI的正确性(界面内容的正确性)。而性能测试工具录制的是服务端和应用之间的通信数据,而不是应用的GUI操作。^_^^_^理解了这一点,就不难明白为什么在进行性能测试脚本录制的时候,需要首先选择录制的协议了。

  4、不清楚何时选择何种协议。

  选择何种协议取决于应用和客户端之间的通信协议。

  二:性能测试工具架构

  1、虚拟用户脚本产生器(Virtual User Generator):通过一个Proxy作为客户端和服务器之间的中间人。

  2、压力产生器(Player):压力器扮演着“产生负载”的角色。

  3、用户代理(Agent):运行在负载机(LoadMachine)上的进程,该进程于产生负载压力的进程或是线程写作完成“产生负载”的功能。如一台PC可以顺利运行200个左右的VU,但对需要1000个VU的情况显然很难指望一台PC,这时就需要通过多台及其进行协作,“用户代理“就帮助产生”步调一致“的VU。

  4、压力调度和监控系统(Conductor):直接与用户交互的主要内容,压力调度可以根据用户的场景要求,设置各种不同脚本的VU数量,设置同步点等,而监控系统则可以对各种数据库,应用服务器、服务器的主要性能计数器进行监控。

  5、压力结果分析工具(Analysis):用来辅助进行测试结果的分析。

  三:性能测试脚本录制时的协议类型

  ^_^^_^不要想当然地根据开发语言来决定协议的选取,这样子极有可能导致录制后的脚本不能回放成功。

  几点说明的内容:

  1、使用Socket协议可以对任何类型的应用通信进行录制,但这种录制生成的脚本很可能没有任何意义。

  2、在对应用间的通信进行录制生成脚本后,对脚本进行回放,有时会出现回放无法继续的情况(停留在某个步骤无法进行下去),此时应该考虑是否使用了合适的协议。

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