【发布时间】:2021-12-29 20:11:42
【问题描述】:
我有一个 Jenkins 工作“FEXT_21.4_AUTOMATION”,即在 docker 中执行一些 selenium 测试用例,而 post 工作的一项工作是生成诱惑报告。但不知何故,报告总是 0 个结果!
下图是我的工作配置。
你可能会发现,我有这个命令让测试用例在 docker 中执行。
docker-compose -f docker-compose.yml run --rm -v ${ROOT}/allure-reports:/allure-reports fext_extender behave ...
由于所有权“root”的输出文件,我有第二个命令来解决更改整个/allure-reports所有权。
docker run --rm -i --entrypoint /bin/sh -e HOST_UID=`id -u` -v ${ROOT}/allure-reports:/allure-reports alpine:latest -c 'chown -R ${HOST_UID}:${HOST_UID} /allure-reports/'
从一个作业执行的控制台,我可以看到一切都顺利进行,并且诱惑报告生成。
...
1 feature passed, 0 failed, 0 skipped
1 scenario passed, 0 failed, 0 skipped
8 steps passed, 0 failed, 0 skipped, 0 undefined
Took 1m2.060s
+ id -u
+ docker run --rm -i --entrypoint /bin/sh -e HOST_UID=111 -v /var/lib/jenkins/workspace/FEXT_21.4_AUTOMATION/allure-reports:/allure-reports alpine:latest -c chown -R ${HOST_UID}:${HOST_UID} /allure-reports/
+ set -e
[FEXT_21.4_AUTOMATION] $ /usr/share/allure/bin/allure generate /var/lib/jenkins/workspace/FEXT_21.4_AUTOMATION/allure-reports -c -o /var/lib/jenkins/workspace/FEXT_21.4_AUTOMATION/allure-report
Report successfully generated to /var/lib/jenkins/workspace/FEXT_21.4_AUTOMATION/allure-report
Allure report was successfully generated.
Creating artifact for the build.
Artifact was added to the build.
Finished: SUCCESS
但不知何故,如果我点击诱惑链接,我只能看到一个 0-testcase 结果。
在持有 Jenkins 任务的平台上,当调用 allure generate 命令时,我可以看到在“allure-reports”下创建的这两个额外文件。
jenkins@Jenkins-CJI:~/workspace/FEXT_21.4_AUTOMATION/allure-reports$ pwd
/var/lib/jenkins/workspace/FEXT_21.4_AUTOMATION/allure-reports
jenkins@Jenkins-CJI:~/workspace/FEXT_21.4_AUTOMATION/allure-reports$ whoami
jenkins
jenkins@Jenkins-CJI:~/workspace/FEXT_21.4_AUTOMATION/allure-reports$ ls -ltr | tail -5
-rw-r--r-- 1 jenkins messagebus 78515 Nov 18 15:29 Screenshot_2021-11-18T18:29:25.491659_1637278165.4916792.png
-rw-r--r-- 1 jenkins messagebus 134025 Nov 18 15:29 Screenshot_2021-11-18T18:29:26.011988_1637278166.0120175.png
-rw-r--r-- 1 jenkins messagebus 134025 Nov 18 15:29 Screenshot_2021-11-18T18:29:26.384782_1637278166.3848066.png
-rw-r--r-- 1 jenkins messagebus 78 Nov 18 15:29 testrun.json
-rw-r--r-- 1 jenkins messagebus 295 Nov 18 15:29 executor.json
这是魅力报告的样子:
jenkins@Jenkins-CJI:~/workspace/FEXT_21.4_AUTOMATION$ tree -L 2 allure-report
allure-report
├── app.js
├── data
│ ├── attachments
│ ├── behaviors.csv
│ ├── behaviors.json
│ ├── categories.csv
│ ├── categories.json
│ ├── packages.json
│ ├── suites.csv
│ ├── suites.json
│ ├── test-cases
│ └── timeline.json
├── export
│ ├── influxDbData.txt
│ ├── mail.html
│ └── prometheusData.txt
├── favicon.ico
├── history
│ ├── categories-trend.json
│ ├── duration-trend.json
│ ├── history.json
│ ├── history-trend.json
│ └── retry-trend.json
├── index.html
├── plugins
│ ├── behaviors
│ ├── junit
│ ├── packages
│ ├── screen-diff
│ ├── trx
│ ├── xctest
│ └── xunit-xml
├── styles.css
└── widgets
├── behaviors.json
├── categories.json
├── categories-trend.json
├── duration.json
├── duration-trend.json
├── environment.json
├── executors.json
├── history-trend.json
├── launch.json
├── retry-trend.json
├── severity.json
├── status-chart.json
├── suites.json
└── summary.json
有人知道为什么诱惑报告是空的吗?
感谢您的帮助。
杰克
【问题讨论】:
标签: docker jenkins jenkins-plugins allure