我必须使用WorkBench记录并运行Jmeter测试,以便我使用Proxy记录[见图片]。 Lists all the URLs
我知道我可以通过在HTTP(S)测试脚本记录器中使用“包含URL模式”选项来排序/获取URL。录制时会列出所有网址,包括.gif,.png,.ico等。
我有两个疑问要清楚。
录制“要包含的网址格式”时要给出的条件是什么 - 仅记录所需的网址。 (我想要的URL是,例如,如果我正在录制一个用PhP开发的网站,我只需要所有的PhP链接。即home.com/index.php,home.com/contact.php,home.com/about。 PHP)。现在它记录了我看不到所需链接的所有URL。如何获取.php或主链接URL(我们在浏览器URL中看到)?
关于在测试计划中运行测试包含我从WorkBench剪切粘贴的URL(使用Proxy记录),我们是否需要添加所有记录的URL,包括.gif,.png,.ico等或只是添加特定的URL(比如home.com/about.php)?如果我只使用特定的URL运行,结果是否正确,因为我们排除了.gif,.png,.css等其他URL?
答案 0 :(得分:0)
您不需要单独记录这些.gif
,.ico
等文件,因为这不是真正的浏览器的工作方式。
真正的浏览器向HTTP端点发出主要请求,然后同时下载所谓的嵌入式资源:图像,脚本,样式等。为了使您的JMeter测试更像真实您需要的浏览器:
从录制中排除这些请求。点击"添加建议的排除" HTTP(S) Test Script Recorder中的按钮(甚至可以使用JMeter录制模板功能更好地重新录制您的测试场景)
您可以从JMeter的主菜单中选择File -> Templates -> Recording -> Create
来创建录制测试计划。
在测试执行中添加HTTP Request Defaults到您的测试计划,切换到"高级"选中并勾选Retrieve All Embedded Resources
和Parallel Downloads
框
如果有来自外部服务器的图片,横幅广告,您也可以通过Perl-5 compatible regular expression形式的URL(s) must match
框过滤它们。
有关在JMeter测试中处理嵌入资源的更多信息,请参阅Web Testing with JMeter: How To Properly Handle Embedded Resources in HTML Responses文章。