前一段时间,笔者写了一个算法接口自动化测试的工具,主要用到了testng+maven+AllureReport+excel+Jenkins 解决了每次算法逻辑调整导致的重复性测试工作的问题,并且在参数与服务器多样性的情况下,进行自动化测试,生成allure report测试报告,直接美观。现浅谈一下体验。
一、工程及插件配置
1、 首先,新建一个maven测试工程,maven的安装及配置在这里就不多说了,注意工程main与test文件夹必须对应,不然testng执行不到(笔者在这里可是被坑了好长时间),其次maven最好用中央仓库,不然翻墙下载jar包很慢的。
2、 Pom中配置testng依赖,这里也不多说了,网上都有资料。此处需注意testng.xml要放到pom文件同级目录,否则执行中会有执行文件找不到的情况或其他问题。
3、 Pom中配置allure report插件,笔者这里用的是allure的testng插件:
Maven支持包:
Plugins插件:
Allure的report插件,生成html报告:
好了,以上就是工程环境的配置,下面我们来说下testng+excel实现接口的批量测试吧。
二、testng+excel实现接口批量测试
1、首先配置文件可以在pom文件中引入,笔者此处直接放到了工程根目录。在testng.xml中进入,testng.xml配置:
以下以CompareTest文件为例:
1)BeforeTest,获取excel文件,并加载其内容;
获取配置文件config.properties文件中的配置代码如下:
(此处excelUtil工具是读取excel数据参数)
Excel与config.properties文件内容如下:
此处excel若需要填写结果的话可以在执行每条测试用例后在result列对应填入测试结果。
此处若有多个服务器地址,则可改用excel将请求host配置成测试用例。
2)DataProvider,将上一步的excel参数转化为二维数组(此处也不做过多说明,excel的读取用的XSSF)
3)根据上步提供的excel数据进行testng测试,此处我们就可以进行接口的相关测试啦,包括断言等。
此时windows本地就可以开始测试与查看报告了。当然,由于需要,笔者将工程放到了服务器jenkins中统一使用。下面简单说明下载jenkins中的配置。
三、jenkins管理工程
1)首先jenkins需要配置maven及allure(如果代码需要git管理的话再配置git)。
2)jenkins中添加工程的pom.xml(此时需注意jenkins工程名要与java测试工程名相同):
Allure report设置结果目录:
此后构建后就能得到allure report接口测试报告啦!
到这里,此接口自动化测试就结束了,诸多工具笔者也是初次接触,后续还有很多要学习的东西,一起加油吧!
Q