jmeter - Jmeter:我无法获得断言所需的响应
问题描述
我一直在研究这个项目,但我无法获得断言所需的响应,因为 Jmeter 中的响应正文只显示“您的浏览器不支持框架。请更新您的浏览器”,但我使用的是最新版本的 Firefox (图 2)。我也在真实浏览器中手动执行请求,与我在 Jmeter 中使用的浏览器相同,并且没有遇到上述消息。有人可以告诉我发生了什么吗?感谢您的帮助 响应机构
解决方案
根据JMeter 项目主页:
JMeter 不是浏览器,它在协议级别工作。就 Web 服务和远程服务而言,JMeter 看起来像一个浏览器(或者更确切地说,是多个浏览器);但是 JMeter 并不执行浏览器支持的所有操作。特别是,JMeter 不执行 HTML 页面中的 Javascript。它也不像浏览器那样呈现 HTML 页面(可以将响应视为 HTML 等,但时间不包含在任何示例中,并且一次只显示一个线程中的一个示例)。
很可能您在iframe中寻找的值是使用一些JavaScript 函数加载的,该函数没有被 JMeter 启动,因为它不评估 JavaScript。
因此,您需要使用另一个HTTP 请求采样器手动调用相关请求,该采样器将加载所需的页面。您可以通过使用您最喜欢的浏览器开发工具查看页面源或使用 JMeter 的HTTP(S) 测试脚本记录器记录您的测试场景来找出必要的请求 URL 。
另请注意,由于 JavaScript 调用的异步性质,最好将它(以及其他 JavaScript 调用,如果有的话,在Parallel Controller
您可以通过JMeter Plugins Manager安装 Parallel Controller 和 Sampler
推荐阅读
- azure-devops - 有没有办法在 Azure Pipelines 条件中使用自定义变量
- ruby - 如何正确使用 Ruby DelegateClass 来包装 YAML::Store?
- windows - 如何删除行包含以下带有正则表达式模式的扩展?
- javascript - 失败的单元测试用例 (JASMINE)
- android - Android:在recyclerview下方显示按钮,但始终在屏幕上
- sql-server - SQL Server你如何得到一个列的总和,如果它小于0,则从另一列添加,否则添加该列?
- javascript - 如何使用禁用按钮提交表单
- python - 使用 cx_Oracle Python 在 DB 中插入 CSV 或 dict 数据
- azure - 如何知道用户是否选择让我登录 Azure B2C
- validation - 断言在某些登录网站上仅通过一次测试