背景:2017 年 9 月,我司自研了自动化测试平台,并在实际工作中取得了一定的效果。其中,接口自动化测试是平台的重要功能,现将接口自动化相关的功能分享出来,供同行交流。平台仍在不断优化完善中,希望大家多提建议,多多益善~

基本功能

具体介绍详见下文

测试集管理

测试集列表(个人)

测试集仓库

测试集仓库为团队协同工作使用的测试集仓库,需要个人将测试集公有后才可见,测试集版本与公有库版本各自独立(测试集可推送至公有库,从而同步版本)

测试集接口管理及配置

此项体现测试集支持完成的接口自动化的功能项,可谓核心,总结为:

测试集页面支持的功能还是比较多的,下图为一个简单的 Demo 示例,已包含三个接口
接口列表

接口基础操作

注:植入了我司的所有接口数据,如 API 传参、描述、示例等(平台包含接口管理功能,包含约 2K+API,这里暂不表)

测试集运行

选择对应的环境、账号、运行变量后,点击运行,平台会发送请求至后端进行处理

运行环境、账号、运行的变量设置为平台附加的功能,这里也都不详细介绍了

有必要简单介绍下后端测试集执行机制,如何优雅地进行测试任务调度及管理是自动化测试平台的核心,目前方式是引入 celery 作为任务调度器,多节点部署服务器。可扩展一定量的执行服务器(我司初期配置了 6 台基础配置的虚机,一台 200 个节点,可承载 1200 个测试任务并行运行)。

运行记录

运行记录
操作点击显示对应的测试报告

测试报告

测试报告
定制化测试报告展示

解决方案

很多情况下,需要多个测试集共同执行,且共用一套环境及运行参数,对此我们的解决方案是加入测试集解决方案 😓

解决方案
该解决方案还在不断优化中,也就不详细介绍了

以上仅为平台提供的部分功能,其他的像是监控、邮件通知等就不介绍了 。。。


↙↙↙阅读原文可查看相关链接,并与作者交流