停止测试套件执行python selenium

2024-09-28 03:23:59 发布

您现在位置:Python中文网/ 问答频道 /正文

鉴于此测试套件:

import unittest

class unittestDex(unittest.TestCase):

    def test_page1(self):
       pass

    def test_page2(self):
       pass

    def test_page3_isCritical(self):
       #I am passing isCritical variable as boolean, this will be received after the test is executed, true/false
       if isCritical == True:
          #stop the whole execution, test_page4 shoudn't run anymore

    def test_page4(self):
       pass

    @staticmethod
    def main():
        suite = unittest.TestSuite()
        suite.addTest(unittestDex(metname='test_page1')
        suite.addTest(unittestDex(metname='test_page2')
        suite.addTest(unittestDex(metname='test_page3')
        suite.addTest(unittestDex(metname='test_page4')
        unittest.TextTestRunner(verbosity=2).run(suite)

if __name__ == "__main__":
main()

如果满足关键条件,是否有办法以某种方式停止套件运行? 基本上,我是问是否有人找到了停止测试套件运行的方法

This解决方案对我来说并不实用,因为它以某种方式将所有测试合并在一起并作为一个单元运行,我不希望:

已尝试pytest.exit('Test suit exited manually') and raise Exception 但测试并没有停止执行,下一个测试方法将在之后立即启动


Tags: testself套件maindefpassunittestsuite
1条回答
网友
1楼 · 发布于 2024-09-28 03:23:59

您可以使用pytest-x在第一次失败后停止测试套件。 可以使用maxfail=num配置该值,其中num是故障数

相关问题 更多 >

    热门问题