【发布时间】:2020-12-01 11:57:49
【问题描述】:
所以我已经编写了我的自动化机器人框架测试,它们位于 GitLab 存储库中。我想每天自动运行一次。
- 这可能吗?
- 我需要一个 .gitlab-ci.yml 文件吗? (如果是,我在里面放什么?)
【问题讨论】:
-
下面的答案是否有帮助。
标签: continuous-integration automated-tests robotframework gitlab-ci pipeline
所以我已经编写了我的自动化机器人框架测试,它们位于 GitLab 存储库中。我想每天自动运行一次。
【问题讨论】:
标签: continuous-integration automated-tests robotframework gitlab-ci pipeline
是的,你完全可以在 gitlab ci 中运行机器人测试。
这样回答
是的,这很有可能,事实上这就是您执行管道测试的方式。您只需要构建一个 Dockerfile,其中包含在 docker 中执行框架所需的东西。这是示例 dockerfile。我建议你包装 .robot 脚本以从 bash 脚本运行(如机器人 -d *.robot)。
现在您的存储库中需要 .gitlab-ci.yml 才能拥有这样的内容。
stages:
- build
- run
variables:
ARTIFACT_REPORT_PATH: "${CI_PROJECT_DIR}/reports"
build_image:
stage: build
variables:
DOCKER_IMAGE_TAG: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_NAME}
script:
- docker build -t ${DOCKER_IMAGE_TAG} .
after_script:
- docker push ${DOCKER_IMAGE_TAG}
- docker logout
robot_tests:
stage: run
variables:
DOCKER_IMAGE_TAG: ${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG}
image: ${DOCKER_IMAGE_TAG}
script:
- robot-test.sh
artifacts:
paths:
- $ARTIFACT_REPORT_PATH
when: always
应该就是这样,一旦作业完成,您将在存储库中的路径位置看到作业中的输出。
【讨论】: