一、性能测试工具的基本组成
性能测试工具基本都会包含如下几个核心的模块。
- 压力生成器(Virtual User Generator):来产生无限压力地方,相当于无数个测试人员
压力发生器是性能测试工具最核心的部分,它主要有两个功能,一是真实模拟用户操作,二是模拟有效并发。
- 结果采集器(Result Collector):结果记录人员
- 负载控制器(Controller):对应的是指挥人员
- 系统资源监控器(Monitor):对应的是若干资源监控人员,监控客户端、网络端、服务端
- 结果分析器(Analysis):对应的是结果统计人员
二、性能测试工具缺陷
1.模拟用户网页操作时,浏览器是异步请求6个,而工具是同步执行6次请求
模拟真实用户操作:浏览器在加载网页的时候,是同时并发多个TCP连接去请求页面对应的HTTP资源,包括HTML、JS、图片、CSS,当前流行的浏览器普遍会并发6-10个连接。然而,性能测试工具在模拟单个用户操作的时候,基本上都是单连接串行加载页面资源。产生的差异在于,假如页面有100个资源,每个HTTP请求的响应时间约为100毫秒,那么浏览器采用6个连接并行加载网页时大概会需要1.7秒(100/6*100毫秒)