• 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(conditionreason)

    • Skip the decorated test if condition is true.

      翻译:condition为true的时候跳过

    • @unittest.skipUnless(conditionreason)

    • 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()

  • 相关阅读:
    Java 练习题02 (包装类 (对字符串进行排序))
    Java 练习题01(运算符)
    理解有参构造器和无参构造器的作用
    反射;获取类的字节码对象;Class类实例化对象;获取类中的公共构造方法/成员变量/成员方法并执行;暴力反射 (Java Day27)
    网络编程;InetAddress类;UDP协议和TCP协议;Socket编程;UDP编程;TCP编程 (Java Day26)
    序列化 & 反序列化
    几种常用的认证机制
    MySql交换两列
    架构设计思想
    REST资源的URL设计
  • 原文地址:https://www.cnblogs.com/caoj/p/7815770.html
Copyright © 2020-2023  润新知