性能测试常见问题

  • 格式:docx
  • 大小:31.37 KB
  • 文档页数:10

下载文档原格式

  / 10
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

压力测试常见问题记录

1.LoadRunner录制脚本时为什么不弹出IE浏览器?

当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面的方法来解决。

启动浏览器,打开Internet选项对话框,切换到高级标签,去掉“启用第三方浏览器扩展(需要重启动)”的勾选,然后再次运行VuGen即可解决问题

提示:通常安装Firefox等浏览器后,都会勾选上面得选项,导致不能正常录制。因此建议运行LoadRunner得主机上保持一个干净的测试环境。

2.在Controller中运行Web相关测试场景时,经常会有很多超时错误提示,如何处理这类问题?

这主要有脚本的默认超时设置引起。当回放Web脚本时,有时候由于服务器响应时间较长,会产生超时的错误。这时需要修改脚本的运行时配置。

进入“Run-time Setting”对话框后,依次进入“Internet Protocol→Preference”。然后点击“Options…”按钮,进入高级设置对话框,可以修改各类超时设置的默认值。

3.如何让场景的用户执行发生错误继续运行,以保证不间断进行压力测试?

用VuGen打开虚拟用户脚本后,进入“Run-time Settings”对话框后,依次进入“General →Miscellaneous”,可以看到Miscellaneous设置中关于“Error Handling”的配置。勾选“Continue on error”即可让虚拟用户发生错误继续运行。

4.测试分析结果中会统计Action时间,而实际上可能并不须要这些数据,如何只显示自己定义的用户事务?

进入脚本的运行时设置,依次进入General→Miscellaneous。默认情况下,自动事务配置“Automatic Transactions”下有两个选项:第一个是把脚本的Action部分定义为一个事务;第二个时把脚本的每一部分定义为一个事务。去掉这两个勾选后,测试结果将会只显示自己定义的用户事务。

5.统计结果中的总点击量Total Hits时用户的鼠标点击次数吗?

Total Hits不时按照用户的鼠标点击次数来计算的,而是按照各个虚拟客户端向后台发起的总的请求数来进行统计的。例如在向服务器请求的一个页面中,如果该页面包含5个图片,用户只要单击鼠标就可以访问该页面,而单个虚拟用户在LoadRunner访问的点击量为1+5=6次。

6.有些Web测试结果分析图(例如每秒返回页面数)在测试结果分析图中无法看到,如何进行配置?

用VuGen打开虚拟用户脚本后,进入“Run-time Settings”对话框后,依次进入“Internet Protocol>Preference”,可以看到一些Web性能图配置。勾选上面得选项后,Controller将会在测试执行过程中生成数据,然后可在Analysis中查看相应的性能结果分析图。

7.LoadRunner HTTP服务器状态:

在录制Web协议脚本回放脚本的过程中,会出现HTTP服务器状态代码,例如常见的页面-404错误提示、-500错误提示。

错误现象1:-404 Not Found服务器没有找到与请求URI相符的资源,但还可以继续运行直到结束。

错误分析:此处与请求URI相符的资源在录制脚本时已经被提交过一次,回放时不可再重复提交同样的资源,而需要更改提交资源的内容,每次回放一次脚本都要改变提交的数据,保证模拟实际环境,造成一定的负载压力。

解决办法:在出现错误的位置进行脚本关联,在必要时插入相应的函数。

错误现象2:-500 Internal Server Error服务器内部错误,脚本运行停止。

错误分析:服务器碰到了意外情况,使其无法继续回应请求。

解决办法:出现此错误是致命的,说明问题很严重,需要从问题的出现位置进行检查,此时需要此程序的开发人员配合来解决,而且产生的原因根据实际情况来定,测试人员无法单独解决问题,而且应该尽快解决,以便于后面的测试。

8.出现“Error: Parameter 'xml_NewParam': No more unique values for this parameter in table 'xml_NewParam.dat' [unique range is 1-4].The parameter continues with last value of the range according to "When Out Of Values" policy.”的报错

原因1:是由于选用了unique once的类型

原因2:是由于参数表中的数据不够导致

LoadRunner调试socket程序时,经常有同学会碰到接收数据mismatch的问题,录制或手动编写测试脚本的时候接收的数据大小是25byte,而测试时实际接收到的是50byte。LR中当遇到Mismatch时,会等待读取socket中的数据,直到超时为止。这个超时时间默认为10秒,当脚本回放时mismatch很多时,自然就慢了。

这里就总结下遇到Mismatch问题的几种处理办法,供大家以后参考

1.修改data.ws的buf大小与实际返回的数据一致,前提是每次操作的返回数据大小是一样的。这是最简单也是最易实现的方法,在制造测试数据时最好就要考虑到如何让返回的数据大小一致。当然并不是所有的系统都能满足此前提,可以再看下面的处理方法。

2.使用一个函数设置返回的属性,来实现这种动态的数据缓冲。

lrs_set_receive_option(EndMarker, EndMarker_None ) // 读取直到缓冲结束.

lrs_set_receive_option(EndMarker, StringTerminator , "\r\n") //读取直到"\r\n"符号出现 .

lrs_set_receive_option(EndMarker, BinaryStringTerminator , "\X00") 读取直到二进制符号"\\X00"出现

此方法适用于知道返回数据包的最后符号的情况,接收过程中读取此符号即停止接收。