如何调试脚本,解决脚本回放成功但失败的情况

如何调试脚本,解决脚本回放成功但失败的情况

ID:12012293

大小:4.58 MB

页数:10页

时间:2018-07-15

如何调试脚本,解决脚本回放成功但失败的情况_第1页
如何调试脚本,解决脚本回放成功但失败的情况_第2页
如何调试脚本,解决脚本回放成功但失败的情况_第3页
如何调试脚本,解决脚本回放成功但失败的情况_第4页
如何调试脚本,解决脚本回放成功但失败的情况_第5页
资源描述:

《如何调试脚本,解决脚本回放成功但失败的情况》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、1背景1.1讲一个故事以前我们公司招了一个自称非常熟练loadrunner的员工,有一次分配给他测试sso单点登录系统的性能测试。登录一个网站A,需要输入用户名密码,然后在访问另一个网站B,因为在网站A已经登录过,所以B应该不需要再登录,直接就可以访问B页面。让该员工测试下可以支持多少用户,及稳定性。该员工使用loadrunner测试了2天,然后给我们报告说支持320左右个用户并发。然后,我们跟他一起验证下,确实在320并发时就出现用户失败。但检查系统A与B,发现A确实登陆了,但B没有数据,后面他定位了半天也没解决问题,最后我帮他定位下,结果发现是发给B系统请求B页面的HTTP的会话信息里没

2、有包括用户已经登陆的信息,会话在Cookie与URL的参数都存在。还有另外一个问题,当时由于没研究loadrunner是如何模拟用户的,后来参与开发了kylinPET性能测试工具,才对性能工具的原理有深入的了解。其实之前loadrunner工具测试的并发用户数最大支持320,是错误的,大家可以看我写的“如何测试服务器的最大并发数”,网址:http://www.kylinpet.com/dow_6_1.html1.2该故事说明了什么该故事说明了,一个熟练loadrunner的人进行系统性能测试,还是出现花费了2天多的时间是白费的,因为实际B系统还需要登录,因此无法访问B页面。为什么呢,因为他对

3、业务了解不透,还有认为loadrunner回放通过就表示脚本没问题,虽然他做了一些关联参数,但脚本其实还是错误的。因此,会使用性能测试工具只是一项技能,真正掌握性能测试,还需要结合业务与协议、网络知识,另外还需要掌握测试工具调试脚本方法。1.1在网络上经常出现求助帖:测试工具脚本回放成功,但实际是失败在网络论坛上经常出现求助帖:测试工具loadrunner或jmeter的脚本回放成功,但检查后台,数据不存在或用户其实没登陆。很多测试人员对系统不了解,有不懂HTTP协议,也不了解网页怎么产生的,然后就使用测试工具进行测试;有些人员会检查后台发现脚本有问题,但不会定位;有些经验丰富的人,知道怎么

4、调试脚本,验证脚本,并定位问题修改;然而,有些新手或经验不足的测试人员会出现做无用功,而且还不知道自己做了无效的性能测试,因为他认为测试工具回放成功就表示OK。其实,很多开发人员或设计人员也不能完全了解被测系统,另外也不了解HTTP协议,因为HTTP是底层的,都被封装了,如spring开发基本就不需要了解HTTP。所以,测试人员要掌握一些基本知识,如HTTP协议、基本的网络知识,还有掌握系统架构、场景、还有业务流程,也是很有技术含量的。对于WEB学会使用浏览器调试功能或httpwatch了解系统业务交互流程,学习HTTP。如果有这样的基础,使用性能测试工具调试脚本就事半功倍啦。2介绍怎么调试

5、脚本(这里只介绍WEB)很多测试人员或开发人员对HTTP或HTML不熟悉,很大可能还不了解业务细节,所以自己修改脚本有一定的难度,需要借助工具提供的调试功能来调试脚本。主要解决业务动态的地方:参数化、关联参数、Cookie。2.1测试工具怎么判断脚本失败当如下情况发生时:1)发送请求消息参数化失败1)出现响应码错误,如收到500、505等错误码2)出现超时,请求HTTP,但它的响应时间超过期望时间3)建立TCP连接失败1.1脚本回放成功并不代表业务成功一个脚本执行成功通过上面条件判断是不够的,因为可能存在这样的情况,登录成功,服务器回302定位到正常页面;登录失败,服务器回302或200定位

6、到错误页面或登录页面。登录失败时,其实所有HTTP请求都是成功的,只是业务失败,所有根据上面条件,测试工具会认为脚本执行成功。如下图,登陆失败跳到error.jsp,但响应码是302。如:如果没有判断响应码或检查页面内容(检查点),则测试工具会认为脚本正常,继续请求已录制的后面的HTTP请求,但其实脚本已经失败,因为业务失败啦,没出现正常页面。这种情况是常发生的,即得到的内容或页面不是正常的。很多工具只提供检查页面内容,没有提供检查响应码,但没经验的测试人员,可能不会设置或忽略设置,因为脚本执行成功,他认为脚本没问题,这将导致性能测试无效。loadrunner不支持检查响应码但支持设置检查点

7、,kylinPET支持检查响应码与检查点,响应码自动根据录制设置。1.1脚本回放成功,需进一步验证脚本回放成功后,还需要进一步验证,验证方法:1.1.1检查服务器在服务器上查看数据是否正确,如检查用户提交了数据是否存在;但只有用户提交数据并保存到数据库或日志才可以检查,很多系统可能没用户提交,用户只是获取数据,但可能存在由于参数错误,获取的数据失败,如获取json内容错误(HTTP仍然是回200)所以,检查服

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。