为何要做接口自动化测试的持续集成?
1. 接口相对稳定,改动少,比起GUI自动化测试来说性价比更加高些,不容易出现GUI自动化那种掉到维护脚本的坑里。
2. 接口测试比较简单,一个规范的接口,测试只需要按照接口扩展测试用例就行,覆盖上较方便,后期维护接口时也比较快捷。
3. 利用持续集成的优势,可以在开发写好接口后直接做好接口测试的持续集成,部署到jenkins上,提前发现问题,而不是等到项目后期再发现问题解决问题。
为什么建议由测试来完成接口测试?
1. 相比开发来说,测试更容易设计测试场景并覆盖齐全。
为什么选择此方案?
接口测试的方案有很多,无论是jmeter+ant+jenkins,还是postman+jenkins+newman,亦或是通过代码实现,归根结底,选择比较方便的方案就好。
jmeter做接口测试有他自己的优势,但是资源占用和配置上相对来说较繁琐些,而代码编写的话会对测试有一定的代码能力的要求,所以这里也是选择postman的原因,能让其他团队更容易上手。
原理:
通过postman编写接口测试的用例,最后将接口集导出,上传到git,再通过jenkins的配置,从git取导出的接口集json,trigger接口测试的job运行。
安装步骤:
首先确保系统安装来python,gcc,g++,如果没有则安装:
$ sudo apt-get install python
$ sudo apt-get install build-essential
$ sudo apt-get install gcc
$ sudo apt-get install g++
从nodeJS官网http://nodejs.org/下载最新源代码包
$ wget http://nodejs.org/dist/v6.5.0/node-v6.5.0.tar.gz
解压:
$ tar -zxf node-v6.5.0.tar.gz
$ cd node-v6.5.0
默认安装:
$ ./configure
$ make
$ sudo make install
安装结束,可以用下面的命令检查安装的版本:
$ node –version
v6.5.0
安装NPM并测试下
$ sudo apt-get install npm
$ npm install newman --global
$ newman run examples/sample-collection.json
集成jenkins,从git的分支pull接口集合文件并使用上面的命令执行。
相关资料:https://www.npmjs.com/package/newman