python接口自动化8-unittest框架使用

前言
:单元测试框架,基于Erich Gamma的JUnit和Kent Beck的测试框架 。
【python接口自动化8-unittest框架使用】一、框架基本使用
需要注意的是:①类,继承单元测试 的 类;②测试用例必须以test开头 。学会基本前后置灵活运用以及断言即可 。
1、setUp:每个用例“前”都执行 1 次、:每个用例“后”都执行 1 次、test开头的用例 。
setUp、既是每次用例都执行的前后置 。

python接口自动化8-unittest框架使用

文章插图
from unittest import TestCase# class 继承:TestCaseclass Test_Login(TestCase):def setUp(self):print('每个用例“前”都执行 1 次')def tearDown(self):print('每个用例“后”都执行 1 次')# 以下是用例,需已 test 开头,用例可以写多个 。def test_001(self):print('我是用例:case_01')def test_002(self):print('我是用例:case_02')
2、:只执行一次前置;:只执行一次后置 。
需使用修饰符:@,且函数括号用:cls
from unittest import TestCase# class 继承:TestCaseclass Test_Login(TestCase):# 需使用修饰符:@classmethod,且函数用:cls@classmethoddef setUpClass(cls):print('全部用例“前”只 执行 1 次')@classmethoddef tearDownClass(cls):print('全部用例“后”只 执行 1 次')def setUp(self):print('每个用例“前”都执行 1 次')def tearDown(self):print('每个用例“后”都执行 1 次')# 以下是用例,需已 test 开头,用例可以写多个 。def test_001(self):print('我是用例:case_01')def test_002(self):print('我是用例:case_02')
3、常用的两种断言方法(基本能供日常使用,不够自己去翻源码,如图二)
①两值相等:(a , b)
②A值在B值里面:(A, B, msg) ;msg自己想写啥就写啥,类似出现错误后备注:断言失败返回控制台日志,等等
from unittest import TestCase# class 继承:TestCaseclass Test_Login(TestCase):def setUp(self):print('每个用例“前”都执行 1 次')def tearDown(self):print('每个用例“后”都执行 1 次')# 以下是用例,需已 test 开头,用例可以写多个 。def test_001(self):print('我是用例:case_01')self.assertEqual((1+2), 3)# 断言两个值相等def test_002(self):print('我是用例:case_02')res = '广深'# 假如这是实际结果self.assertIn('小龙', res, msg='他说没有小龙')# 断言 小龙 在 res 中,如果不在msg是返回值self.assertTrue(res == '广深')# 断言两个值相等(也可以False,断言==、!=、in)
注意:不要执行用例去调用用例,用例是相互独立的,执行用例的顺序按照assic码:0-9,A-Z,a-z 。欢迎来QQ交流群: