1模拟浏览器行为1
1为什么模拟浏览器行为下面举测试人员经常遇到的问题:1
1为什么测试工具运行时间比浏览器时间长为什么使用浏览器访问页面响应很快,1-2秒就完成;而使用测试工具却需要10几秒,甚至几十秒才完成脚本
解答:a)这是由于浏览器访问页面响应是并发的,同时并发多个线程(多个Socket),而性能测试工具基本是串行发送请求的
如果一个页面有100个资源(CSS、HTML、JS、图片),需要发送100个HTTP请求,如果使用6个线程(浏览器),则每个大概请求14个HTTP;如果使用一个线程(测试工具),则需要请求100个,时间当然大很多
上图为chrome浏览器访问www
com时,调试工具显示的并发情况
可以看到浏览器是并发多线程多TCP下载网站资源
b)另外浏览器具有缓存功能,如果之前访问了www
com,会把一些图片缓存在浏览器临时目录,下次请求时发送的HTTP请求会带上If-Match或Etag等头域,WEB服务器判断资源没改变则会304响应,而不是回200OK,这样减少资源的传输,所以时间就小
而有些测试工具是不携带这些头域(包括Loadrunner),因此回的响应是200OK
所以测试人员默认真实测试时,可以考虑部分有缓存,部分没缓存
kylinpet
com版权所有,侵权必究v1
2测试工具成功运行N个虚拟用户,但不知道服务器是否可以支持N个用户性能测试工具运行一定用户数都成功,则表示该服务器能支持这么多用户数
如果不是,哪到底能支持多少用户
解答:一次有效的测试结果,不只用户都运行成功,同时需要保证访问一个页面或一次交易的响应时间在合理范围
这里介绍“2-5-8原则”,简单说,就是当用户访问一个页面或一次交易能够在2秒以内得到响应时,会感觉系统的响应很快;当用户在2-5秒之间得到响应时,会感觉系统的响应速度还可以;当用