如何在Bitbucket中配置Jmeter .JMX文件路径以执行脚本
在Bitbucket Pipelines中运行JMeter脚本时指定文件路径的解决方案
问题描述
我是Bitbucket新手,尝试通过Bitbucket Pipelines运行JMeter脚本,配置的pipelines命令如下:
pipelines: default: - step: script: - apt-get update && apt-get install --no-install-recommends -y openjdk-11-jre wget - cd /opt && wget https://archive.apache.org/dist/jmeter/binaries/apache-jmeter-5.5.tgz && tar xf apache-jmeter-5.5.tgz - cd apache-jmeter-5.5/bin - ./jmeter -n -t "Login.jmx"
执行最后一行时报错:
"An error occurred: The file /opt/apache-jmeter-5.5/bin/Login.jmx doesn't exist or can't be opened"
我的Login.jmx文件放在仓库根目录,想知道如何正确指定路径,是否需要将文件放到jmeter/bin目录?该怎么操作?
解决方案
不需要将Login.jmx放到jmeter/bin目录,Bitbucket Pipelines在构建时会自动将你的仓库代码克隆到构建代理的工作目录(默认路径为/opt/atlassian/pipelines/agent/build/),只需通过正确路径指向仓库根目录的脚本即可,推荐以下两种简洁的实现方式:
方式一:直接调用JMeter完整路径,保持在仓库根目录执行
修改pipelines脚本,无需切换到jmeter/bin目录,直接使用JMeter的绝对路径执行,同时用相对路径指向仓库根目录的Login.jmx:
pipelines: default: - step: script: - apt-get update && apt-get install --no-install-recommends -y openjdk-11-jre wget - cd /opt && wget https://archive.apache.org/dist/jmeter/binaries/apache-jmeter-5.5.tgz && tar xf apache-jmeter-5.5.tgz - /opt/apache-jmeter-5.5/bin/jmeter -n -t "Login.jmx"
这种写法最直观,避免了目录切换带来的路径混乱。
方式二:切换到jmeter/bin目录后,使用绝对路径指向脚本
如果一定要保持切换到jmeter/bin目录的操作,直接指定仓库根目录的绝对路径即可:
pipelines: default: - step: script: - apt-get update && apt-get install --no-install-recommends -y openjdk-11-jre wget - cd /opt && wget https://archive.apache.org/dist/jmeter/binaries/apache-jmeter-5.5.tgz && tar xf apache-jmeter-5.5.tgz - cd apache-jmeter-5.5/bin - ./jmeter -n -t "/opt/atlassian/pipelines/agent/build/Login.jmx"
内容的提问来源于stack exchange,提问作者Smh
相关产品推荐
相关产品推荐

