性能测试工具原理
2014-03-03 22:21
429 查看
广义的讲,可以把性能测试过程中使用到的所有工具都称为性能测试工具,性能测试工具分为两大类,服务端性能测试工具和前端性能测试工具;服务端性能测试工具需要支持产生压力和负载,录制和生成测试脚本,设置和部署场景,产生并发用户和向系统施加持续的压力;而前端性能测试工具则不需要关系系统的压力和负载,只需要关心浏览器等客户端工具(目前的前端性能测试工具主要是Web前端性能测试工具)。
服务端性能测试工具架构
1.虚拟用户脚本产生器
虚拟用户脚本生成器通过Proxy方式实现,具体来说,就是由一个Proxy作为客户端和服务器之间的中间人,接收从客户端发送的数据包,记录并将其转发给服务端,接收从服务端返回的数据流,记录并返回给客户端。这样,无论是客户端还是服务端都以为自己在一个真实的运行环境中。
2.压力产生器
压力产生器用于根据脚本内容产生实际的负载。在性能测试工具中,压力产生器扮演者“产生负载”的角色。例如,如果一个测试场景要求产生100个虚拟用户,则压力产生器会在调度下生成100个进程或线程,每个线程对指定的脚本进行解释执行
3.用户代理
用户代理是运行在负载机上的进程,该进程与产生负载压力的进程或线程协作,接收调度系统的命令,调度产生负载压力的进程或线程,从这个意义上看,用户代理业可以被看作是压力产生器的组成部分
4.压力调度和监控系统
压力调度和监控系统是性能测试工具中直接与用户交互的主要内容。压力调度工具可以根据用户的场景要求,设置各不同脚本的VU数量、设置同步点等,而监控系统则可以对各种数据库、应用服务器、服务器的主要性能计数器进行监控
5.压力结果分析工具
压力结果分析工具可以用来辅助进行测试结果的分析。
参考资料《软件性能测试过程详解与案例剖析》
服务端性能测试工具架构
1.虚拟用户脚本产生器
虚拟用户脚本生成器通过Proxy方式实现,具体来说,就是由一个Proxy作为客户端和服务器之间的中间人,接收从客户端发送的数据包,记录并将其转发给服务端,接收从服务端返回的数据流,记录并返回给客户端。这样,无论是客户端还是服务端都以为自己在一个真实的运行环境中。
2.压力产生器
压力产生器用于根据脚本内容产生实际的负载。在性能测试工具中,压力产生器扮演者“产生负载”的角色。例如,如果一个测试场景要求产生100个虚拟用户,则压力产生器会在调度下生成100个进程或线程,每个线程对指定的脚本进行解释执行
3.用户代理
用户代理是运行在负载机上的进程,该进程与产生负载压力的进程或线程协作,接收调度系统的命令,调度产生负载压力的进程或线程,从这个意义上看,用户代理业可以被看作是压力产生器的组成部分
4.压力调度和监控系统
压力调度和监控系统是性能测试工具中直接与用户交互的主要内容。压力调度工具可以根据用户的场景要求,设置各不同脚本的VU数量、设置同步点等,而监控系统则可以对各种数据库、应用服务器、服务器的主要性能计数器进行监控
5.压力结果分析工具
压力结果分析工具可以用来辅助进行测试结果的分析。
参考资料《软件性能测试过程详解与案例剖析》
相关文章推荐
- 黑马程序员 Java基础学习笔记 网络编程
- 在易语言中调用MS SQL SERVER数据库存储过程方法总结
- emgu cv
- pin5i
- DB 存储过程(一)
- DB2 存储过程(二)
- List Set Map有什么异同?
- 第一次编程
- 数据结构学习笔记8 树 课后习题
- c编程 2月25日
- prim算法
- Thinking in C++读书笔记【一】---对象导言
- DB2 存储过程(三)
- 题目1197:奇偶校验
- ubuntu的音响没有声音,但是耳机播放有声音
- Bootstrap学习之模态框
- 怎样获得虚函数指针
- poj 2524 Ubiquitous Religions --- 并查集
- 百度UEditor上传图片配置
- 系统的负载与CPU、内存、硬盘、用户数监控