我有一个bash脚本在docker中运行硒测试用例。该脚本的最后一步是生成测试结果的诱人报告,例如:
export ALLURE_IMAGE=beeete2/docker-allure2
export PROJECT_DIR=selenium-suites
export ALLURE_REPORT_DIR=allure-report
export ALLURE_CONFIG_DIR=allure-config
docker run --rm \
-v $(pwd)/$ALLURE_REPORT_DIR:/$ALLURE_REPORT_DIR \
-v $(pwd)/$PROJECT_DIR/$ALLURE_RESULTS_DIR:/$ALLURE_RESULTS_DIR \
-v $(pwd)/$PROJECT_DIR/$ALLURE_CONFIG_DIR:/$ALLURE_CONFIG_DIR \
$ALLURE_IMAGE allure generate /$ALLURE_RESULTS_DIR -o /$ALLURE_REPORT_DIR --clean
如果是第一次创建报告,则将创建此诱惑报告目录,并且整个目录结构为:
├── allure-report
│ ├── app.js
│ ├── data
│ ├── export
│ ├── favicon.ico
│ ├── history
│ ├── index.html
│ ├── plugins
│ ├── styles.css
│ └── widgets
├── selenium-suites
│ ├── allure-config
│ ├── ...
我想知道如何保留以前的历史记录,如果我是第二次或第三次运行脚本,并且创建了最新的魅力报告?
我已经在Google上进行了搜索,发现应该在下一次执行开始之前将历史记录部分保存在单独的allure-results目录中,例如:
if [[ -e ./allure-report/history ]]; then
if [[ -e ./allure-results/history ]]; then
rm -rf ./allure-results/history
fi
mv ./allure-report/history ./allure-results/history
fi
通过这种方式,它将尝试将最新的魅力报告/历史记录部分保存到魅力结果/历史记录中,但是我不确定何时执行下一次完成后,将要在allure-report下创建一个新报告,它如何知道在allure-results / ...下保存了历史记录?
答案 0 :(得分:0)
您需要做的只是复制(并替换)历史记录文件夹中的内容
当然,您需要根据项目的结构指定文件夹的位置。
一旦运行allure generate,它将从上一次运行中获取文件,还将搜索历史文件(在路径中:allure-results / history)
生成报告后,allure将新文件发布到allure-report文件夹中,并将以前的所有运行再次分组到历史记录文件中(allure-report / history /)
答案 1 :(得分:0)
您可以使用以下Docker容器浏览历史记录的执行情况: https://github.com/fescobar/allure-docker-service#keep-history-and-trends