接口流程封装与定义
接口测试封装思想
接口测试要模拟所有可能调用的情况,具体的测试方法分为:
1、接口的功能测试:该接口所具备的功能,必须有开发提供的文档,知道返回的是什么
2、接口的性能测试:短时间内承重很大的访问量,如压力测试
3、稳定性测试:7*12小时不间断访问的稳定性
4、接口的容错性测试:输入的数据不符合接口定义时,具体的错误处理
5、接口的安全性测试:比如对数据是否加密
配置:
-
根据配置文件获取初始配置和依赖
接口封装:
-
封装接口调用进行抽象封装
-
类似PageObject效果
业务流程:
-
数据初始化
-
业务用例设计,含有多个api形成的流程定义,不要在包含任何接口实现细节
-
断言
扫描二维码关注公众号,回复: 13262845 查看本文章
测试框架
-
API对象:完成对接口的封装
-
接口测试框架:完成对api的驱动
-
配置模块:完成配置文件的读取
-
数据封装:数据构造与测试用例的数据封装
-
Utils:其他功能封装,改进原生框架不足
-
测试用例:调用API对象实现业务并断言
框架实现
选择语言(尽量使用与研发一致的编程语言和技术栈)
-
pyhton
-
java kotlin
-
go
选择合适的测试框架
-
java + RestAssured + JUnit4/JUnit5/TestNG + Allure2
-
Python +Requests + PyTest + Allure2 = HttpRunner
Api对象
架构设计
- 多协议支持,http tcp thrift等,需要不同的底层引擎
- 保证用例的协议无关,基于接口或者抽象实现
实现
- code实现方式:输出=业务。功能(输入)
- 配置文件方式: yaml格式,json格式
多环境支持
- 联调环境,测试环境,预发布环境,线上环境
架构管理
-
使用package管理业务模块
-
使用class管理业务功能
-
使用method完成业务具体行为
-
使用配置文件读取初始配置
-
使用继承规划用例执行顺序
-
使用testcase完成测试用例的落地
-
使用assertion完成业务正确性校验
-
使用数据文件管理用例的数据驱动
-
使用jenkins完成创新集成