JMeter的HTML板报表不显示詹金斯

时间:2019-02-02 20:05:33

标签: jenkins jmeter report dashboard

我无法在Jenkins中查看Jmeter仪表板报告,但是jenkins作业会创建一个index.html报告,但它为空

jenkins

能正常工作在本地和与所有所需的值生成的index.html。

local

缺少什么我在这里?

这是我的pom.xml

storage_.data_.buf

可能是某些詹金斯配置出错了吗?

3 个答案:

答案 0 :(得分:2)

这归因于詹金斯Content Security Policy

您需要通过设置Java系统属性来对其进行调整:

  

hudson.model.DirectoryBrowserSupport.CSP

由于它包含保留的字符,因此可以通过创建Groovy script文件$ JENKINS_HOME / init.groovy或目录$ JENKINS_HOME / init.groovy.d /中包含以下内容的任何.groovy文件来设置此属性:< / p>

System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "default-src 'self'; style-src 'self' 'unsafe-inline'; script-src * 'unsafe-inline'; font-src *;img-src 'self' data: *;frame-ancestors 'self'")

如果您想进一步了解性能测试和JMeter,此book可以为您提供帮助。

请注意,您可以按照此tutorial轻松地完成自己的工作。

答案 1 :(得分:2)

由于我的组织不允许放宽安全性并重置内容安全策略,因此我使用docker进行了此操作,因此能够清晰地查看报告

这是Dockerfile

FROM alpine:3.9

ENV JMETER_HOME /opt/apache-jmeter-5.1
ENV JMETER_BIN ${JMETER_HOME}/bin
ENV PATH $PATH:$JMETER_BIN
ENV JMETER_DOWNLOAD_URL http://mirrors.estointernet.in/apache//jmeter/binaries/apache-jmeter-5.1.tgz

RUN apk update \
    && apk upgrade \
    && apk add --update openjdk8-jre curl unzip bash \
    && rm -rf /var/cache/apk/* \
    && mkdir -p /tmp/dependencies  \
    && curl -L --silent ${JMETER_DOWNLOAD_URL} >  /tmp/dependencies/apache-jmeter-5.1.tgz  \
    && mkdir -p /opt  \
    && tar -xzf /tmp/dependencies/apache-jmeter-5.1.tgz -C /opt  \
    && rm -rf /tmp/dependencies

COPY launch.sh /opt/
COPY src/ /opt/src

WORKDIR /opt

ENTRYPOINT ["/opt/launch.sh"]

您可以将jmeter命令放在launch.sh中,并将.jmx脚本放在src文件夹中

答案 2 :(得分:0)

您可以使用HTML Publisher Plugin

显示仪表板

默认情况下,Jenkins Content Security Policy看起来像

sandbox; default-src 'none'; img-src 'self'; style-src 'self';

该值是从hudson.model.DirectoryBrowserSupport.CSP Java System property中读取的,因此您可以通过Jenkins Script Console设置相关值,使其更“放松”(该值将一直存在,直到下次重新启动)或通过将相关参数添加到Jenkins启动参数中。

您可能还对Jenkins Performance Plugin感兴趣,它添加了一些通过/失败标准和性能趋势图之类的其他功能