谈到接口测试,大家都不会感到陌生。接口测试的工具和实现方式也有很多,比如ant+jmeter+jemkins、postman…..等都可以去实现,但是今天我要介绍的是基于python+unittest +requests的接口测试,至于接口测试前的准备工作、原理….等其他的需要掌握的知识点,大家自己可以下去查找资料学习。
1、环境介绍:
采用python3+unittest+requests
2、工程目录结构介绍:
整个工程分为5个目录:程序入口、测试报告、测试用例、测试数据(包括Http请求默认值等),工具目录(主要是放置一些公共调用函数,比如请求类、json解析)
3、接口请求
接口请求封装成单独类,用例直接调用请求类即可。之所以单独出来,因为请求的方式有很多种,如果后续需要添加其他的请求方式只用修改此类就可以了,其他的有点就不多说了
4、接口用例
每一个接口单独一个类,每个接口会有多种场景,然后根据情况去初始化,具体去实现。说到接口case,我得说一下参数化,参数化的方式有很多,比如excel、xml、database….这些都可以,但是我这里沿用的testng的数据源思想,其实unittest也是可以实现的,那就是parameterized,具体怎么实现大家自己可以研究
5、执行
执行也是沿用unittest的功能,加载想要执行的接口用例即可
6、测试报告
我的测试报告没有使用unittest自带的HtmlTestRunner,为什么不使用自带的,因为我自己认为HtmlTestRunner测试模板不适用接口测试报告模板。一个接口测试报告是需要展示接口的详细请求信息的,而HtmlTestRunner达不到这个需求。不过还好,我觉得jmeter的思路不错,参照着修改了一下(注意报告中的详情是可以展开和收起的):
以上的这些都是只是我个人的思路,有不对或者更好的建议,还希望大家多多指出,一起共同学习。以上只提供了思路,学习的道路上思路最重要,实现方式有很多种,在这里向大家推荐一个学习交流群:
672899761。
欢迎大家关注我,之后也会有很多的干货分享!