python unittest学习记录

最近公司一个项目需要进行API测试,我一看一共有十几个接口,一个接口有二三十个用例要测,当时就犯了难了,这得要写多久才能开发完呀。有个同事提醒要用unittst或pytest框架,我之前没用过都不知道是什么东西。经过几天边学习边开发,终于搞懂了unittest框架,在这里记录一下学习成果。

unittest框架介绍

unittest是python自带的一个标准库,就想Java的测试框架Junit,是一个单元测试框架,不仅仅用来进行单元测试,也可以进行自动化测试。

编写规则

模块名和文件名

模块名和文件名没有要求,如果文件较多,最好使用相同的格式,比如test_开头,方便后面使用。

测试类

测试类必须导入unittest,测试类必须继承unittest.TestCase,方法名以test_开头,按ASCII码顺序排列,因为测试运行顺序是按ASCII进行的。

核心要素

测试用例TestCase

这里的测试用例是一个继承unittest.TestCase的类,类里的方法才是我们平常测试的测试用例。如下所示:

测试套件Testsuite

测试套件可以看作测试用例的集合,可以把测试用例加入到测试套件中。如下所示

测试运行器TestRunner

测试运行器,run方法运行进行测试。如下所示

测试加载器TestLoader

加载查找测试用例。还可以通过unittest属性调用默认加载器进行加载查找,discover(test_dir, pattern='test*.py')通过文件所在目录加载查找测试用例并加到套件中,如下所示

测试夹具Fixture

测试夹具类似一个测试环境的容器,可以对测试环境进行初始化和销毁。有三个控制级别,方法级别,类级别,模块级别,常用的是方法级别和类级别,方法级别每个方法执行前后都会执行,类级别整个类执行的前后执行。

断言

判断测试用例结果是否符合预期,符合通过测试,否则测试不通过。

常用的断言

测试方法

命令行执行

python -m unittest 文件路径,如下所示

.表示测试通过,F表示测试失败

如果有main方法如下所示

也可以像以前一样使用 "python 文件路径 "命令进行执行,如下所示

后记

做到自动化测试还需要参数自动化,自动生成测试报告,后面有时间再记录

展开阅读全文

页面更新:2024-03-30

标签:夹具   断言   套件   框架   模块   加载   级别   文件   测试   方法

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号

Top