Selenium2+python自动化70-unittest之跳过用例(skip)

时间:2022-05-07
本文章向大家介绍Selenium2+python自动化70-unittest之跳过用例(skip),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

前言

当测试用例写完后,有些模块有改动时候,会影响到部分用例的执行,这个时候我们希望暂时跳过这些用例。

或者前面某个功能运行失败了,后面的几个用例是依赖于这个功能的用例,如果第一步就失败了,后面的用例也就没必要去执行了,直接跳过就行,节省用例执行时间。

一、skip装饰器

skip装饰器一共有四个

@unittest.skip(reason)

  • Unconditionally skip the decorated test. reason should describe why the test is being skipped. 翻译:无条件跳过用例,reason是说明原因
  • @unittest.skipIf(condition, reason)
  • Skip the decorated test if condition is true. 翻译:condition为true的时候跳过
  • @unittest.skipUnless(condition, reason)
  • Skip the decorated test unless condition is true. 翻译:condition为False的时候跳过
  • @unittest.expectedFailure
  • Mark the test as an expected failure. If the test fails when run, the test is not counted as a failure. 翻译:断言的时候跳过(暂时不知道有啥用,没看懂,貌似断言失败,也变成用例pass了。)

二、skip案例

运行结果:

测试1
测试4
.ssx
----------------------------------------------------------------------
Ran 4 tests in 0.003s

OK (skipped=2, expected failures=1)

三、跳过整个测试类

四、参考代码:

# coding:utf-8
import unittest
class Test(unittest.TestCase):

    @unittest.skip(u"无条件跳过此用例")
    def test_1(self):
        print "测试1"

    @unittest.skipIf(True, u"为True的时候跳过")
    def test_2(self):
        print "测试2"

    @unittest.skipUnless(False, u"为False的时候跳过")
    def test_3(self):
        print "测试3"

    @unittest.expectedFailure
    def test_4(self):
        print "测试4"
        self.assertEqual(2, 4, msg=u"判断相等")

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