本接口自动化框架采用 python + unittest + request + openpyxl + myddt + pymysql 来实现接口自动化。
unittest 是 Python 自带的一个单元测试框架
2.1 作用
- 管理用例
- 批量执行用例
- 组织运行结果/报告
- 让代码更稳健
- 可拓展
2.2 unittest 框架中,有以下几个组件:
TestCase:即测试用例,Unittest提供testCase类来编写测试用例,一个TestCase的实例就是一个测试用例。一条测试用例就是一个完整的测试流程,包括测试前准备环境的搭建(setUp),执行测试代码(run),以及测试后环境的还原(tearDown),通过运行一条测试用例,可以对某一个问题进行验证。
Fixture:即测试固件,用于测试用例环境的搭建和销毁。在测试步骤执行前需要为该测试用例准备环境(SetUp),如启动app或打开浏览器,测试步骤执行后需要恢复环境(TearDown),如关闭app或浏览器,这时候就需要用到Fixture,使代码更简洁。
TestSuite:即测试套件,把需要执行的测试用例集合在一起就是TestSuite。使用TestLoader来加载TestCase到TestSuite中
TextTestRunner:即测试执行器,用于执行测试用例。该模块中提供run方法执行TestSuite中的测试用例,并返回测试用例的执行结果,如运行的用例总数、用例通过数、用例失败数。
report:即测试报告。unittest框架没有自带的用于生成测试报告的模块或接口,需要使用第三方的扩展模块HTMLTestRunner。
2.3 跳过执行测试用例共有四种写法
- @unittest.skip(reason) :跳过测试用例,reason 为测试被跳过的原因。
- @unittest.skipIf(condition, reason) :当 condition 为真时,跳过测试用例。
- @unittest.skipUnless(condition, reason) :跳过测试用例,除非 condition 为真。
2.4 断言
2.5 报告
在项目根目录下新建 common 文件夹,用来存储公用方法。
在项目根目录下新建 reports 文件夹,用来存储项目报告。
在项目根目录下新建 logs 文件夹,用来存储结果日志。
在项目根目录下新建 test_data 文件夹,用来存储用例数据。
在项目根目录下新建 test_cases 文件夹,用例存储测试用例模块。
在项目根目录下新建 main.py 文件,作为入口函数,方便项目调试。
3.1 common公用方法文件
3.1.1 init.py
3.1.2 http_requests.py
3.1.3 data_handler.py
3.1.4 db_handler.py
3.1.5 fixtrue
3.1.6 logs_handler.py
3.1.7 reports_handler.py
4.1 config_dev.ini
4.2 config_handler.py
4.3 init.py
保存接口测试过程中输出的日志
保存接口测试报告
7.1 base_case.py
7.2 test_login.py
8.1 使用Excel表格维护测试用例
用例:id、title、url、method、requests、status_code、exportx_code、sql
main.py 为 测试入口。
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/bcyy/15005.html