Gauge中文文档(12)—怎么做?

来源:互联网 发布:日韩明星壁纸软件 编辑:程序博客网 时间:2024/04/23 18:58

Gauge同CI/CD工具集成

GoCD

GoCD是一个持续集成和部署工具。

安装

  • 在Go上创建一个新的通道
    这里写图片描述

  • 在Go代理上下载和安装Gauge

  • 在Go代理上安装所需的gauge语言插件

安装提示

  • Gauge默认情况下以系统角色安装而非用户角色。然而插件是以用户角色安装,所以插件应该通过Go代理执行的用户账户进行安装。请参考Gauge及其插件的默认安装位置。
  • 或者,您可以为插件设置自定义位置,以便Go代理可以作为其他用户运行。

创建执行任务

  • 创建将执行gauge run specs的新任务
  • 如果您只想执行specs的子集,您可以使用标签执行
    比如:gauge run --tags "tags1 & tags2" specs
  • 添加标签-p用并行执行它们
  • 使用--env标志运行对应指定环境
  • 参阅帮助查看可以使用的标志列表

这里写图片描述

报告

  • 想要在Gauge执行后生成报告,可以在通过在Artifacts标签中添加新的artifact来设置Go。

这里写图片描述

  • Artifacts可以在Artifacts标签栏查看。

这里写图片描述

  • 在job执行过程中可以看到控制台输出,在执行完后可以看到报告。

这里写图片描述

  • 您也可以添加一个自定义标签来查看您生成的html报告。

TeamCity

  • 在代理上下载和安装gauge,点击这里查看更多安装Gauge文档。
  • 在代理上安装所需的Gauge语言插件:gauge install <language>

安装提示

  • Gauge默认情况下以系统角色安装而非用户角色。然而插件是以用户角色安装,所以插件应该通过TeamCity代理执行的用户账户进行安装。请参考Gauge及其插件的默认安装位置。
    • 或者,您可以为插件设置自定义位置,以便TeamCity代理可以作为其他用户运行。

创建执行任务

  • 在TeamCity中创建一个新项目,指向Gauge项目存储库URL;
  • 添加一个可以执行gauge run specs的构建步骤;
  • 如果您之想执行specs的子集,可以使用基于tag执行:
    比如:gauge run --tags "tag1 & tag2" specs
  • 添加标签-p来使用并行执行;
  • 使用--env标签使用对应的环境;
  • 点击帮助查看更多可用的标签列表。

报告

  • 想要在Gauge执行后生成报告,可以在通过在Artifacts标签中添加新的artifact来设置TeamCity;

这里写图片描述

  • 您也可以添加自定义标签来查看生成的html报告。
    进入Project Settings -> Report tabs -> Add a new build report tab.来添加自定义标签。

这里写图片描述

  • 在job执行过程中可以看到控制台输出,在执行完后可以看到报告。

Travis-CI

Travis-CI是一个托管的分布式持续集成服务,用于构建和测试Github上托管的软件项目。

  • 登陆Travis-CI然后进入accounts菜单
  • 选择要构建的项目库,然后点击该开关

这里写图片描述

创建任务

  • 在你的项目根目录下创建一个.travis.yml文件
  • 针对您想构建的项目来添加下列行到.travis.yml
    OS X

language:
- language_name

os:
- osx

install:
- brew install gauge
- gauge install html-report

script: ‘gauge run specs’

sudo: false

Linux

language:
- language_name os:
- linux install:
- sudo apt-key adv –keyserver hkp://pool.sks-keyservers.net –recv-keys 023EDB0B
- echo deb https://dl.bintray.com/gauge/gauge-deb stable main | sudo tee -a /etc/apt/sources.list
- sudo apt-get update
- sudo apt-get install gauge
- gauge install html-report

script: ‘gauge run specs’

sudo: true

  • 如果您只想执行specs的子集,您可以使用标签来执行。例如:添加script: gauge run --tags "tag1 & tag2" specs到您的.travis.yml文件
  • 添加-p标签来使用并行执行,例如:添加script: gauge run -p specs 到您的.travis.yml文件
  • 使用--env标签来使用对应的环境
  • 点击帮助查看更多可用的标签列表。

CircleCI

CircleCI是一个云托管,持续集成和交付平台。

circle.yml配置gauge为依赖,并添加xml report插件到您的gauge项目。

Linux

dependencies:
pre:
- sudo apt-key adv –keyserver hkp://pool.sks-keyservers.net –recv-keys 023EDB0B
- echo deb https://dl.bintray.com/gauge/gauge-deb stable main | sudo tee -a /etc/apt/sources.list
- sudo apt-get update
- sudo apt-get install gauge

执行测试并生成报告

配置spec目录中的circle.yml来执行测试,并生成junit结果。

test:
post:
- gauge install
- gauge run specs
- mkdir -p $CIRCLE_TEST_REPORTS/junit/
- cp ./reports/xml-report/result.xml $CIRCLE_TEST_REPORTS/junit/

Gauge在docker上测试

Gauge可以轻松的安装到docker容器。
由于Gauge支持第一类命令行,因此从任何容易调用它是非常简单的。

准备

  • Docker

Gauge的Docker镜像

  • 在您想项目根目录创建一个Dockerfile文件
  • 根据您想构建的系统来添加下列行

DockerFile

FROM ubuntu

# Install Java.
RUN apt-get update
RUN apt-get -y install sudo
RUN apt-get -q -y install default-jdk
RUN apt-get install apt-transport-https -y

#Install gauge
RUN apt-key adv –keyserver
hkp://pool.sks-keyservers.net –recv-keys 023EDB0B
RUN echo deb https://dl.bintray.com/gauge/gauge-deb stable main | sudo tee -a /etc/apt/sources.list
RUN apt-get update
RUN apt-get install gauge
RUN gauge install java

ENV PATH=$HOME/.gauge:$PATH

在Docker上执行Gauge

  • 构建标记为测试的docker镜像 docker build . -t test
  • 使用<项目目录>安装Docker镜像,并在容器中运行specs。
    docker run -v pwd:/<project_directory> -w=”/<project_directory>” test gauge run specs
原创粉丝点击