如何将Jenkins绑定与测试结果



我将自动化的protractor测试设置为在docker容器中运行,借助jenkins。但是,无法使jenkins构建结果反映测试结果(如果某些测试失败,构建也将失败)。

重要的是要说所有测试都应该运行,即使第一个测试失败。

测试是用docker-compose up --abort-on-container-exit启动的,我的Docker-Compose文件看起来像:

version: '2'
services:
  selenium:
    image: selenium/standalone-chrome
    ports:
      - 4444:4444
    volumes:
      - /dev/shm:/dev/shm
  protractor:
    volumes:
      - ./reporting:/assets/reporting
    image: protractor-test
    command: "dockerize -wait http://selenium:4444 -timeout 60m protractor /assets/conf.js"

看起来您的docker-compose命令正在返回出口代码0,无论如何。

使用Jasmine Xunit Reporter生成测试报告,将生成的XML测试报告复制到容器外部(使用docker cp),然后使用Jenkins的后构建行动将其发布?

如果不存在XML,该作业将被标记为失败,这意味着在测试运行时有错误,或者如果未能通过任何测试断言,则将其标记为不稳定。