终于有大佬把UnitTest测试框架的应用总结得这么详细!

01.UnitTest测试框架的基本介绍

unittest

unittest 是 Python 单元测试框架,类似于 JUnit 框架 意义: 1. 灵活的组织 ui 自动化 / 接口测试用例 2. 让用例高效的执行 3. 断言:方便验证测试用例的结果 4. 集成 html 形式测试报告 1. 一个 class 继承 unittest.TestCase ,即是一个个具体的 TestCase (测试方法均以 test 开头,否则是不被unittest 识别,执行顺序根据( 0-9 , A-Z,a-z )) 2. 每一个用例执行的结果的标识,成功是 . ,失败是 F ,出错是 E 3. 用 setUp() 、 tearDown() 、 setUpClass() 以及 tearDownClass() 可以在用例执行前布置环境,以及在用例执行后清理环境 4. 参数中加 stream ,可以将报告输出到文件:可以用 HTMLTestRunner 输出 html 报告。 5.3.verbosity 参数可以控制执行结果的输出, 0 是简单报告、 1 是一般报告、 2 是详细报告。 6. 多个单个的测试用例集合在一起,就是 TestSuite

unittest

unittest,TestSuite: 测试套件 unittest.TestLoader :负责根据各种标准加载测试并将他们包装在 TestSuite 中 loadTestsFromNames: 返回给定的一组用例名的测试用例的套件 unittest.TextTestRunner: 运行用例

02.冒烟测试

冒烟测试

'需求: 1. 给用例打标签,只运行某些具有标签的用例 比如我们可以在测试方法名称后加上_smkoe表示这是重要的测试方法,需要在每天进行回归。 关键点是: 在测试方法名后加上标签的名字使用dir(ClassName) 的方式获取该类下所有定义的方法名使用addTest() 动态添加用例 2. 自定义用例的执行顺序,方法长的先执行,短的后执行

03.添加测试报告

集成Html测试报告

time = time.strftime('%Y-%m-%d-%H-%M', time.localtime()) # 获取当前时间 dir = 报告路径 file = open(dir, 'wb') runner = HTMLTestRunner(stream=file,description= 描述信息 ) runner.run(case)

04.断言

断言

方法 检查
assertEqual(a, b) a ==b
assertNotEqual(a, b) a !=b
assertTrue(x) bool(x) is True
assertFalse(x) Bool(x) is False
assertIs(a, b) a is b
assertIsNot(a, b) a is not b
assertIsNone(x) x is None
assertIsNotNone(x) x is not None
assertIn(a, b) a in b
assertNotIn(a, b) a not in b
assertIsInstance(a, b) isinstance(a,b)
assertNotIsInstance(a, b) not isinstance(a,b)

微信搜一搜【程序员阿沐】关注这个文绉绉的程序员,关注后主页点击【领取资料】有我准备的一线大厂面试资料和简历模板,希望大家都能找到心仪的工作,学习是一条时而郁郁寡欢,时而开怀大笑的路,加油。如果你通过努力成功进入到了心仪的公司,一定不要懈怠放松,职场成长和新技术学习一样,不进则退。如果有幸我们江湖再见!
 

 

终于有大佬把UnitTest测试框架的应用总结得这么详细!

上一篇:selenium---生成BeautifulReport报告


下一篇:一文带你搞定自定义unittest中测试用例的名称