python使用unittest测试套suite运行部分测试用例case,实际运行全部测试用例(转载)

测试框架unittest.TestSuite()测试套的运行原理

import requests
import unittest

class unit_test_3(unittest.TestCase):
    def setUp(self):
        print(44)
    def test_1_register(self):
        print(1)
    def test_2_login(self):
        print(2)
    def tearDown(self):
        print(55)
if __name__ == '__main__':
    #创建测试套件对象
    suite1 = unittest.TestSuite()
    #把测试用例加进测试套件
    suite1.addTest(unit_test_3("test_1_register"))
    #声明框架的运行对象
    runner = unittest.TextTestRunner()
    #runner对象调用run方法,执行测试套件
    runner.run(suite1)

先执行serup,再执行测试套中加进去的一个或多个用例,按照add方法加进去的顺序执行,最后执行teardown

出现问题:
执行会发现,执行了所有的测试用例,而不是只执行了测试套件里加进去的“test_1_register”

 因为在执行的时候,用的是unittests

 因为一开始用

if __name__ == '__main__':
    unittest.main()

的方式调试过,所以一直按照原来的方式运行,在原来的unittests框架里

修改执行配置:
在右上角运行按钮的,左边,点击进行修改运行模式

 这里是原来的执行文件:

 点击左侧的“+”,添加python内容,添加一个单独的python内容

 

 把想要执行的文件加进去

修改名字,这里创建了一个独立的执行py文件,点击ok保存

 回到python文件,点击运行,即可

 两处运行的不同

————————————————
版权声明:本文为CSDN博主「菜鸟和大白谁厉害」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42976139/article/details/101754733

原文地址:https://www.cnblogs.com/will-wu/p/15323661.html