unittest用例执行顺序
当在一个测试类或多个测试模块下,用例数量较多时,unittest在执行用例 (test_xxx)时,并不是按从上到下的顺序执行,有特定的顺序。
unittest框架默认根据ACSII码的顺序加载测试用例,数字与字母的顺序为: 0~9,A~Z,a~z。
对于类来说,class TestAxx 会优先于class TestBxx被执行。对于方法来说,test_aaa()方法会有优先于test_bbb()被执行。对于测试目录与测试文件来说,unittest同样是按照这个规则来加载测试用例的。
方式一、通过测试用例的方法名称:根据ACSII码的顺序加载测试用例
代码示例:
# 测试用例的执行顺序 # 1,通过测试用例的方法名称:根据ACSII码的顺序加载测试用例 import unittest class Test_case(unittest.TestCase): # 进行初始化和清理工作 def setUp(self): print("我是setUp方法,进行测试前的初始化工作") def tearDown(self) -> None: # 表示该方法没有返回值 print("我是tearDown方法,执行测试后的清除工作") # 测试用例 def test_bbb(self): # 判断是否在里面 name = ["张飞","马怒","李四"] self.assertIn("马怒",name) print("测试test_bbb执行结束") def test_ccc(self): # 判断4>2 self.assertGreater(4,2) print("测试test_ccc执行结束") def test_aaa(self): a = True self.assertTrue(a) # 判断是否为真 print("测试test_aaa执行结束") if __name__ == '__main__': unittest.main()
查看执行结果:
方式二、通过addtest()添加用例的顺序
代码示例:
# 测试用例的执行顺序 # 2,通过addtest()添加用例的顺序 import unittest class Test_case(unittest.TestCase): # 进行初始化和清理工作 def setUp(self): print("我是setUp方法,进行测试前的初始化工作") def tearDown(self) -> None: # 表示该方法没有返回值 print("我是tearDown方法,执行测试后的清除工作") def test_bbb(self): # 判断是否在里面 name = ["张飞","马怒","李四"] self.assertIn("马怒",name) print("测试test_bbb执行结束") def test_ccc(self): # 判断4>2 self.assertGreater(4,2) print("测试test_ccc执行结束") def test_aaa(self): a=True self.assertTrue(a) # 判断是否为真 print("测试test_aaa执行结束") if __name__ == '__main__': suite = unittest.TestSuite() # 测试套件实例 suite.addTest(Test_case("test_bbb")) # 类名(方法名称) suite.addTest(Test_case("test_aaa")) suite.addTest(Test_case("test_ccc")) unittest.main(defaultTest="suite")
查看执行结果
总结
如果你对此文有任何疑问,如果你也需要接口项目实战,如果你对软件测试、接口测试、自动化测试、面试经验交流感兴趣欢迎加入我们,加入方式在文章的最后面
自动化测试相关教程推荐:
2023最新自动化测试自学教程新手小白26天入门最详细教程,目前已有300多人通过学习这套教程入职大厂!!_哔哩哔哩_bilibili
2023最新合集Python自动化测试开发框架【全栈/实战/教程】合集精华,学完年薪40W+_哔哩哔哩_bilibili
测试开发相关教程推荐
2023全网最牛,字节测试开发大佬现场教学,从零开始教你成为年薪百万的测试开发工程师_哔哩哔哩_bilibili
postman/jmeter/fiddler测试工具类教程推荐
讲的最详细JMeter接口测试/接口自动化测试项目实战合集教程,学jmeter接口测试一套教程就够了!!_哔哩哔哩_bilibili
2023自学fiddler抓包,请一定要看完【如何1天学会fiddler抓包】的全网最详细视频教程!!_哔哩哔哩_bilibili
2023全网封神,B站讲的最详细的Postman接口测试实战教学,小白都能学会_哔哩哔哩_bilibili
总结:
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。
如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步
在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。
我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,
测试开发视频教程、学习笔记领取传送门!!