如何让我的jmeter测试计划在我的本地Windows机器上的Jenkins中执行?

时间:2016-02-24 20:13:22

标签: bash shell jenkins jmeter

我试图让我的jmeter测试计划在Jenkins中执行。 jmeter和Jenkins都安装在我的本地Windows机器上。我在Jmeter中设置了一些属性并验证我可以使用此命令成功地从cmd行运行它们:

C:\Users\MikeL\Documents\apache-jmeter\bin>jmeter -n -t testApp.jmx -l log.jtl -Jenv=dev -JloopCount=2

现在Jenkins我创建了一个新项目,创建了两个新参数并在"执行shell"中输入了以下内容。基于我在网上找到的例子。我还没有在Jenkins中配置任何其他内容。

sh jmeter.sh -n -p user.properties -t C:/Users/MikeL/Documents/apache-jmeter/bin/testApp.jmx -l log.jtl -Jenv=dev -JloopCount=1
足以说这个剧本不能建立我的jmeter测试。我收到了这个错误:
Cannot run program "sh" (in directory "C:\Program Files (x86)\Jenkins\workspace\LOS API Regression Tests"): CreateProcess error=2, The system cannot find the file specified

如果有人有任何线索我会非常感激!

2 个答案:

答案 0 :(得分:0)

这里的问题是交叉环境。你需要使用windows batch命令而不是执行shell来运行它。 Windows不会将sh识别为可执行文件。

C:\Users\MikeL\Documents\apache-jmeter\bin>jmeter -n -t testApp.jmx -l log.jtl -Jenv=dev -JloopCount=2

在执行Windows批处理模式

中运行以上命令

Windows batch mode

答案 1 :(得分:0)

将此路径C:\Users\MikeL\Documents\apache-jmeter\bin添加到您的环境变量PATH

然后Jenkins Build步骤应为 Windows Batch Command

然后命令应为jmeter -n -t testApp.jmx -l log.jtl -Jenv=dev -JloopCount=1

<强>更新 如果您不想设置路径,只需直接将以下命令作为Windows Batch Command。

C:\Users\MikeL\Documents\apache-jmeter\bin\jmeter.bat -n -t C:\Users\MikeL\Documents\apache-jmeter\bin\testApp.jmx -l log.jtl -Jenv=dev -JloopCount=1

使用Ant / Maven / Gradle在非gui模式下运行jmeter测试。它们也可以与Jenkins集成