我目前一直在使用 jmeter 进行负载测试,这包括注册用户和使用授权 token 以及类似性质的东西,这包括在每次运行时使用 json 提取器/ header 提取器等,因为这些变量是动态的并且改变。
这工作正常,但我在尝试使用 blazemeter gui 测试时遇到问题。我能够使用 blazemeter 扩展记录流程,但似乎找不到加载 jmeter 脚本并将其与 ui 记录结合起来的选项,因此我可以为多个用户运行 GUI 测试。
我已经能够将 jmx 文件添加到 blazemeter 并在那里运行它,但是我再次看到没有选项可以在 blazemeter 中编辑它或将它添加到任何 GUI 测试?
我想做的就是断言页面在特定持续时间内正在加载,但似乎可以通过 API 和 GUI 使其正常工作。
感谢任何帮助
最佳答案
从 BlazeMeter Chrome Extension 导出录制的脚本有不同的选项,看来您正在寻找 JMeter & Selenium combined (YAML)
这个 YAML
看起来像:
# Script generated by Blazemeter Chrome Extension
modules:
nose:
ignore-unknown-actions: true
execution:
- executor: selenium
scenario: test-Selenium
blazegrid: true
capabilities:
browserName: chrome
hold-for: 20m
- executor: jmeter
scenario: test-Http
concurrency: 20
ramp-up: 1m
hold-for: 19m
scenarios:
test-Selenium:
generate-flow-markers: true
headless: false
timeout: 60s
think-time: 0s
requests:
- label: Test
actions:
- go(chrome://newtab/)
- go(http://example.com/)
test-Http:
headers:
Upgrade-Insecure-Requests: '1'
User-Agent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36'
Accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3'
requests:
- transaction: Test
force-parent-sample: false
do:
- url: 'http://example.com/'
method: GET
label: 'http://example.com/'
think-time: 0ms
headers: {}
格式由 BlazeMeter 的 Taurus tool 使用
查看:
- Taurus Configuration Syntax - 获取一般信息
- JMeter Executor - 用于 JMeter 特定设置
- Selenium Executor - 用于特定于 Selenium 的设置
关于testing - 如何在 blazemeter 中将变量添加到 api 调用以加载测试 GUI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58607786/