GitLab CI 使带有空格的 JMeter 命令无效
GitLab CI invalidates JMeter command with spaces
这是我的 git-ci.yml
文件的片段:
image:
name: justb4/jmeter:latest
entrypoint: [""]
api test:
stage: test
script:
- mkdir xyzresults
- /entrypoint.sh -n -t ./XYZ_login_dashboard_machine_actor_card_XYZ.jmx -l ./dcs.log -f -Jthreads=40 -Jrampup=40 -JtestCases=100 -JBASE_URL_2=qa2s.nayax.com -e -o ./dcsresults -Jjmeter.reportgenerator.exporter.html.series_filter="^(Actor|Actor - Update Work Hours)(-success|-failure)?$"
失败并出现错误:
Error: Malformed option -
请注意,如果我只是删除 Actor - Update Work Hours
,此 确实 可以成功工作。
这让我得出结论,我没有正确转义 space。
也试过但没用
'"(Actor|etc.)?$"'
- single-quote
\"...
- "
前的斜杠
'/entrypoint.sh -n -t ./XYZ_login_dashboard_machine_actor_card_XYZ.jmx ... (-success|-failure)?$"'
一个。这导致最后 2 double-quotes 没有出现。
图片显示应该正确传递字符串。
Eureka - 只需添加一个新的 properties 文件并将 -q 参数添加到 jmeter命令。
完全按照预期工作。
所以像这样:
jmeter blah blah -q report_filter.properties
report_filter.properties
jmeter.reportgenerator.exporter.html.series_filter=^(Actor|Actor - Update Work Hours|Actor Get|Actor Seach etc. etc. etc.)(-success|-failure)?$
请注意,您应该不用双引号将字符串括起来。
尽情享受吧。
这是我的 git-ci.yml
文件的片段:
image:
name: justb4/jmeter:latest
entrypoint: [""]
api test:
stage: test
script:
- mkdir xyzresults
- /entrypoint.sh -n -t ./XYZ_login_dashboard_machine_actor_card_XYZ.jmx -l ./dcs.log -f -Jthreads=40 -Jrampup=40 -JtestCases=100 -JBASE_URL_2=qa2s.nayax.com -e -o ./dcsresults -Jjmeter.reportgenerator.exporter.html.series_filter="^(Actor|Actor - Update Work Hours)(-success|-failure)?$"
失败并出现错误:
Error: Malformed option -
请注意,如果我只是删除 Actor - Update Work Hours
,此 确实 可以成功工作。
这让我得出结论,我没有正确转义 space。
也试过但没用
'"(Actor|etc.)?$"'
- single-quote
前的斜杠\"...
- "'/entrypoint.sh -n -t ./XYZ_login_dashboard_machine_actor_card_XYZ.jmx ... (-success|-failure)?$"'
一个。这导致最后 2 double-quotes 没有出现。
图片显示应该正确传递字符串。
Eureka - 只需添加一个新的 properties 文件并将 -q 参数添加到 jmeter命令。
完全按照预期工作。
所以像这样:
jmeter blah blah -q report_filter.properties
report_filter.properties
jmeter.reportgenerator.exporter.html.series_filter=^(Actor|Actor - Update Work Hours|Actor Get|Actor Seach etc. etc. etc.)(-success|-failure)?$
请注意,您应该不用双引号将字符串括起来。
尽情享受吧。