我根据自己的域(用户,菜单,时间轴...)将我所有的赛普拉斯测试划分为Gitab CI的各种作业,我可以并行执行所有这些作业。
因此,这项工作比预期的花费了更多的时间。例如,未执行任何测试的作业将花费15分钟...
这是启动作业的命令:
docker run -v $PWD:/e2e -w /e2e --link=_nginx:myurl.test --net=_default cypress/included:3.4.0 node ./node_modules/.bin/cypress-tags run -e TAGS="${FEATURE_TAGS}" --config baseUrl=https://myurl.test --reporter junit --reporter-options "mochaFile=cypress/reports/[hash].xml"
也许有人知道如何禁用工作中那些无用的步骤。谢谢。
仅当特定目录中有changes时,才可以触发作业。
例如,如果您有2个工作,一个工作用于用户测试,另一个工作用于菜单测试,则可以有如下内容:
cypress_user:
stage : test
script: echo "executing my user tests"
only:
changes:
- dir_where_user_tests_are_stored/
cypress_menu:
stage : test
script: echo "executing my menu tests"
only:
changes:
- dir_where_menu_tests_are_stored/
[cypress_user
job仅在文件在dir_where_user_tests_are_stored
中更改时执行,而cypress_menu
job在文件在dir_where_menu_tests_are_stored
中更改时才执行>