5

第一次为项目配置Travis机器人,在这里跟大家分享一下配置的过程。

前言

在一个项目中,测试可以说是一个非常重要的部分。单元测试就是其中一个很重要的组成部分。

但我们每次写完单元测试都只是跑自己写的测试,而且往往在一个很大的项目中跑一边单元测试要很长时间,而且跑单元测试非常占资源,会很卡。

如果能有一个机器人帮我们做这项工作就好了。

Travis就是这么一个可以帮助我们实现这个愿望的小工具。

预期的效果

完成自己的代码,使用git push提交到github,建立pull request的时候,Travis自动执行所有的单元测试,然后将执行的结果消息发送到我们设置的钉钉群组中。

image.png

如何配置

首先,要在项目的根目录新建.travis.yml的配置文件,Travis的配置都写配置文件中。

1.首先要声明语言

我们的项目使用的java,所以语言就是java

language: java

可以参考官方文档配置你自己的项目:构建Java项目

2.JDK版本

我这里使用的版本是oraclejdk8

jdk:
  - oraclejdk8

当然,你也可以选择其他支持的任意版本。也可以对多个版本的jdk进行测试:多JDK版本

3.配置所需服务

可以配置多个服务,如mysql redis

services:
  - mysql
  - redis-server

4.声明系统

可以手动声明跑测试的系统(可以不设置)

dist: xenial(Ubuntu Xenial)

5.创建数据库

执行代码测试之前,必不可少的就是先创建数据库:

before_install:
  - mysql -e 'CREATE DATABASE IF NOT EXISTS baeldung default charset utf8 COLLATE utf8_general_ci;' -uroot

因为我们上面配置使用的服务是mysql,所以这里也是使用mysql来创建数据库。

6.执行脚本

script:
   - cd api
   - java -version
   - javac -version
   - mvn test

cd api(我这里后台文件夹为api)进入项目后台,mvn test执行测试

7.设置通知方式

当机器人执行单元测试完成后,我们需要知道测试的结果。

但是我们有不希望每次去github上看测试结果。

所以在这里使用钉钉。每次机器人测试结束后,就会将测试结果发送到钉钉群中。

1)添加钉钉机器人

点击钉钉右上角的:...
image.png

点击智能群助手->添加机器人->选择要添加的机器人(这里选择的是Travis:)
image.png

然后复制webhook

image.png

完成。我们可以看见群组中已经添加的机器人:

image.png

2)配置通信

回到我们的配置文件中,添加配置项:

notifications:
  email: false
  webhooks: https://oapi.dingtalk.com/robot/send?access_token=6256f718705cf7491d9b7806a9adf28806ebfc87aebb5e3878a5fb72512167c3

到此,配置文件创建完了。

Travis远比我使用的这些功能要强大的多。不仅仅只支持测试。其它功能还要遇到实际需求在去探索。

官方文档

https://docs.travis-ci.com/


潘佳琦
894 声望34 粉丝

为 API 生,为框架死,为 debug 奋斗一辈子;


引用和评论

0 条评论