我正在将命令行参数传递给gatling脚本。
在Windows操作系统中运行并执行我的测试
set JAVA_OPTS="-DuserCount=2 -DflowRepeatCount=3 -DdefinitionId=102168 -DtestServerUrl=https://someURL -DenvAuthenticationHeaderFromPostman="Basic UWRZm9aGwsxFsB1V7RXK0OlB5cmZvcm1hbmNldGVzdDE="
它工作并接受通过的输入
**********************INPUT*************************************
User Count ====>> 2
Repeat Count ====>> 3
Definition ID ====>> 102168
Environment URL ====>> https://someURL
Authentication Header ====>> Basic UWRZm9aGwsxFsB1V7RXK0OlB5cmZvcm1hbmNldGVzdDE=
***********************************************************
我想在Linux系统上做同样的事情。
如果我在linux中使用这个命令,那么它会抛出错误,或者将空值或二进制值作为输入
(用./gatling.sh传递参数)
JAVA_OPTS="-DuserCount=2 -DflowRepeatCount=3 -DdefinitionId=102168 -DtestServerUrl='https://someURL' -DenvAuthenticationHeaderFromPostman='Basic UWRZm9aGwsxFsB1V7RXK0OlB5cmZvcm1hbmNldGVzdDE='" ./gatling.sh
给出了这个错误,
GATLING_HOME设置为/opt/GATLING-charts-highcharts-2.0.3错误:
无法找到或加载主类
UWRZm9aGwsxFsB1V7RXK0OlB5cmZvcm1hbmNldGVzdDE='
这里的问题是-DenvAuthenticationHeaderFromPostman的参数中给出的“Space”
有人知道解决办法吗?提前谢谢。
最佳答案
问题是$JAVA_OPTS变量可能没有被引号包围。看这个问题:Passing a space-separated System Property via a shell script doesn't work
The gatling guys clearly forgot to do that。
我会提出一个错误和/或只是编辑gatling.sh
。
理想情况下,尽管您可能只想看看Gatling是否接受属性文件或some other way to configure。
关于linux - 在Linux OS的JAVA_OPTS中传递带有'Space'的参数时引发错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38349325/