searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

openAPI的单元测试pytest

2023-11-21 07:14:20
21
0

Openapi pytest单元测试

一、注意事项:

1、支持python2.7版本

2、环境变量:DJANGO_SETTINGS_MODULE=openapi.settings在运行/调试中进行配置。

3、if __name__ == '__main__':

           pytest.main(['-vs'])

           pytest.main(['--html=report.html', '--self-contained-html'])

          pytest.main(['--cov', '--cov-report=xml'])

 

执行生成report.html,此文件就是测试人员需要的单测报告。

执行生成coverage.xml,此文件就是测试人员需要的覆盖率报告。

4、依赖的包已打包:my_env

5、

①文件名的命名注意事项:

 

②类名和方法名的命名注意事项

 

 

二、pytest基本使用说明

1、创建test_开头的文件,测试文件以 test_xx.py 命名需要以 test_开头(或_test 结尾)

2、若是新建类,测试类需要以 Test_开头,并且不能带有 init 方法(Test开头的类,这个类也叫做测试套件,类下面的是函数才是测试用例)

3、测试用例(方法)需要以 test_开头

4、判断用例结果是否满足预期使用assert断言

5、使用mocker.patch.object方法进行数据的mock使用,

       通过mock.patch.object的方式,第一个参数必须是mock的对象

      通过mock.patch的方式第一个参数必须是模拟mock对象的完整路径

6、其余使用方式可参考网上使用说明

三、使用示例(develop_20231130分支)

下面以快照list的EcsSnapshotListProcor为例进行说明,该方法中主要为通过调用下层(yacos或工单、惠通)返回结果,判断结果是否正确。

代码结构说明:在test目录下新建test_snapshot目录,进行快照相关用例编写,相关文件说明:

test_snapshot.py 单元测试用例类

mock_snapshot_data.py 单元测试用例的mock数据文件

product_html.py 单元测试启动的主函数文件

report.html 单元测试生成的测试报告

1.1、分析EcsSnapshotListProcor:

1.2、EcsSnapshotListProcor的单元测试

 

1.3单元测试用例的mock数据

1.4单元测试的主函数

 

0条评论
0 / 1000
y****n
3文章数
0粉丝数
y****n
3 文章 | 0 粉丝