jest jenkins搭建自动化CI测试教程

关于jest和jenkins集成,我走了一些弯路。之前一直用jenkins打包nodejs镜像。想做nodejs自动化接口测试时,我也按照打包镜像的套路走,感觉走到死胡同。网上搜jest jenkins integration, 感觉很多答案都不靠谱。终于自己走通了一遍。

1. 安装jenkins nodejs插件

地址:https://plugins.jenkins.io/no...

jest jenkins搭建自动化CI测试教程

  • 注意该插件要求jenkins版本不低于1.651.3

1.1. 安装方法

方法1:在jenkins插件管理,可选插件中搜索并安装
方法2:如果搜索不到nodejs, 可以在该插件的介绍页面选择latest.hpi, 下载这个文件,然后再插件管理》高级标签页面选择上传刚才的hpi文件。

jest jenkins搭建自动化CI测试教程

jest jenkins搭建自动化CI测试教程

1.2. 插件初始化设置

在全局工具管理页面,路径为/configureTools/,

  1. 点击Nodejs 安装这一栏,新增别名
  2. 选择Nodejs版本,建议不要最新版,最好和本地开发环境一样的版本即可
  3. 输入一些全局安装包,例如: yarn
  4. 最后别忘记点击保存

jest jenkins搭建自动化CI测试教程

2. 创建一个任务

  1. 输入一个名称
  2. 选择FreeStyle风格
  3. 点击确定

jest jenkins搭建自动化CI测试教程

3. 任务配置

3.1. 源码管理

  1. 源码管理当然选择私有部署的git仓库了

jest jenkins搭建自动化CI测试教程

3.2. 触发器构建

  1. 记住方框里面的地址,这个地址需要填入到gilab响应仓库的settings>integrations>URL, 然后选择add webhook, 这边git一旦push, jenkins那边就会自动构建测试任务了。

jest jenkins搭建自动化CI测试教程

【下图: 私有gitlab仓库集成设置】

jest jenkins搭建自动化CI测试教程

3.3. 构建环境选择nodejs

jest jenkins搭建自动化CI测试教程

3.4. 构建

  1. 选择执行shell
  2. 在命令中输入如下代码

注意:第一次构建可能会很慢,因为要安装nodejs, npm, yarn之类的软件

echo $PATH // 输出 path
pwd // 输入当前目录
node --version // 输出node版本
yarn --version // 输出yarn版本

yarn --registry=https://registry.npm.taobao.org // 使用淘宝仓库,安装更快
yarn run test:report // 运行测试

jest jenkins搭建自动化CI测试教程

3.5. 构建后操作

  1. 构建后操作可以选择安装一个publish html reports, 用来查看测试报告。如果没有改选项,则需要安装该插件

jest jenkins搭建自动化CI测试教程

jest jenkins搭建自动化CI测试教程

4. 第一次构建

不出意外的情况下,第一次构建成功。

安装了publish html reports插件后,这边会多出一个选项。

jest jenkins搭建自动化CI测试教程

点击进去可以发现测试报告。

注意 测试报告并不是publish html reports生成的。

jest jenkins搭建自动化CI测试教程

5. 测试报告如何生成?

测试报告实际上是jest-html-reporter生成的。

"scripts": {
    "test:report": "jest --reporters='jest-html-reporter'"
  },

我的项目目录如下:

jest jenkins搭建自动化CI测试教程

6. 最后: 如果你也需要自动化接口测试工具

可以试试我最近写的一个工具:https://github.com/wangduanduan/Aest

6.1. Aest

jest jenkins搭建自动化CI测试教程

jest jenkins搭建自动化CI测试教程 [jest jenkins搭建自动化CI测试教程]() jest jenkins搭建自动化CI测试教程jest jenkins搭建自动化CI测试教程

功能强大的REST接口测试工具, Power By Jest, axios, superstruct, mustache, lodash

6.2. 特点

  • 非常简单: 大部分工作量在于写配置文件
  • 请求模板: 可以在配置文件中加入运行时变量,如/users/{{id}}
  • 响应体结构验证: 支持对响应体的字段类型进行严格校验,多字段、少字段、字段类型不符合预期都会报错
  • 非常详细的报错提示:

6.3. 安装

yarn add aester
npm i aester -S

相关推荐