美文网首页测试开发
python_unittest套件及装饰器

python_unittest套件及装饰器

作者: 古佛青灯度流年 | 来源:发表于2017-01-17 17:50 被阅读90次

    固定套件:

    • unittest module包含了编写运行unittest的功能,自定义的test class都要集成unitest.TestCase类,test method要以test开头,运行顺序根据test method的名字排序,特殊方法:
      setup():每个测试函数运行前运行
      teardown():每个测试函数运行完后执行
      setUpClass():必须使用@classmethod装饰器,所有test运行前运行一次
      tearDownClass():必须使用@classmethod装饰器,所有test运行完后运行一次

    装饰器

    • 可以使用unitest.skip装饰器族跳过test method或者test class,这些装饰器包括:
      @unittest.skip(reason):无条件跳过测试,reason描述为什么跳过测试
      @unittest.skipif(conditition,reason):condititontrue时跳过测试: 这里完全可以应用条件去控制用例是否执行了,很灵活
      @unittest.skipunless(condition,reason):condition不是true时跳过测试
    class MyTestCase(unittest.TestCase):
    
      @unittest.skip("demonstrating skipping")
      def test_nothing(self):
        self.fail("shouldn't happen")
    
      @unittest.skipIf(mylib.__version__ < (1, 3),
               "not supported in this library version")
      def test_format(self):
        # Tests that work for only a certain version of the library.
        pass
    
      @unittest.skipUnless(sys.platform.startswith("win"), "requires Windows")
      def test_windows_support(self):
        # windows specific testing code
        pass
    
    @unittest.skip("showing class skipping")
    class MySkippedTestCase(unittest.TestCase):
      def test_not_run(self):
        pass
    
    • expected failure:使用@unittest.expectedFailure装饰器,如果test失败了,这个test不计入失败的case数目

    @阴天-2017-01-17 17:50:40

    相关文章

      网友评论

        本文标题:python_unittest套件及装饰器

        本文链接:https://www.haomeiwen.com/subject/osambttx.html