Python + Selenium之unittest测试用例满足条件,进行跳过测试Skip

Posted Owen_ET

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python + Selenium之unittest测试用例满足条件,进行跳过测试Skip相关的知识,希望对你有一定的参考价值。

直接上代码:

__author__ = zc

import unittest



class demoSkipTest(unittest.TestCase):
    a = 70
    b = 50

    print(a%b)
    def test_add(self):
        """加法"""
        result = self.a + self.b
        self.assertEqual(result, 40)

    def test_add_2(self):
        self.skipTest("强制跳过示例")
        result = self.a + self.b
        self.assertEqual(result, 9)

    @unittest.skipIf(a > b, u"a>b,正确就强制跳过")
    def test_sub(self):
        """减法"""
        result = self.a - self.b
        self.assertTrue(result == -30)

    @unittest.skipUnless(a%b == 2, u"错误就跳过")
    def test_div(self):
        """除法"""
        result = self.a / self.b
        self.assertTrue(result == 1)

    @unittest.expectedFailure
    def test_mul01(self):
        """乘法"""
        result = self.a * self.b
        self.assertTrue(result == 350)

    @unittest.expectedFailure
    def test_mul02(self):
        """乘法"""
        result = self.a * self.b
        self.assertTrue(result == 3500)


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

 

运行结果:

Fssxus
======================================================================
FAIL: test_add (__main__.demoSkipTest)
加法
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/xxx/run_safe_test.py", line 24, in test_add
    self.assertEqual(result, 40)
AssertionError: 120 != 40

----------------------------------------------------------------------
Ran 6 tests in 0.000s

FAILED (failures=1, skipped=3, expected failures=1, unexpected successes=1)

说明:

最后两个,先预想这个用例是错误的,但是最后一个结果是正确的,所以

expected failures=1       (预想就是错的)

unexpected successes=1   (没想到是正确的)

 

以上是关于Python + Selenium之unittest测试用例满足条件,进行跳过测试Skip的主要内容,如果未能解决你的问题,请参考以下文章

Python+selenium之疑难点解决之去除readonly的限制

Python+selenium之测试报告

python 开发之selenium

Python爬虫之selenium的使用

Python+Selenium之常用模块

Python之Selenium的安装