У меня есть скрипт 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
Если отчет был создан 1 раз, будет создан этот каталог allure-report, и вся структура каталога будет выглядеть так:
├── allure-report
│ ├── app.js
│ ├── data
│ ├── export
│ ├── favicon.ico
│ ├── history
│ ├── index.html
│ ├── plugins
│ ├── styles.css
│ └── widgets
├── selenium-suites
│ ├── allure-config
│ ├── ...
Я хочу знать, как мне сохранить предыдущую историю, если я должен был запустить сценарий 2-й или 3-й раз и создать последний отчет об очаровании?
Я погуглил и обнаружил, что часть истории должна быть сохранена в отдельном каталоге результатов очарования до начала следующего выполнения, например:
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 / history часть в allure-results / history , но я не уверен, когда будет выполнено следующее выполнение, и собирается создать новый отчет в allure-report, откуда он знает, что в allure-results / ... сохраняется история?