zoukankan      html  css  js  c++  java
  • Selenium 2自动化测试实战31(跳过预期和预期失败)

    跳过预期和预期失败

    在运行测试时,有时需要直接跳过某些测试用例,或者当用例符合某个条件时跳过测试,又或者直接将测试用例设置为失败。unittest提供了实现这些需求的装饰器。

    --unittest.skip(reason)
    无条件地跳过装饰的测试,说明跳过的原因。
    
    
    --unittest.skipIf(condition,reason)
    如果条件为真时,跳过装饰的测试。
    
    
    --unittest.skipUnless(condition,reason)
    除非条件为真,跳过装饰的测试。
    
    
    --unittest.expectedFailure()
    测试标记为失败。不管执行结果是否失败,统一标记为失败
    

     

    #coding:utf-8
    import unittest
    
    class MyTest(unittest.TestCase):
    
        def setUp(self):
            pass
    
        def tearDown(self):
            pass
    
        @unittest.skip("直接跳过测试")
        def test_skip(self):
            print("test aaa")
    
        @unittest.skipIf(3>2,"当条件为真时,跳过测试")
        def test_skip_if(self):
            print "test bbb"
    
        @unittest.skipUnless(3>2,"当条件为真时,执行测试")
        def test_skip_unless(self):
            print "test ccc"
    
        @unittest.expectedFailure
        def test_excepted_failure(self):
            self.assertEqual(2,3)
    
    
    if __name__=="__main__":
        unittest.main()

    执行结果如下图所示:

    此例子中,创建了4条测试用例,第一条用例通过@unittest.skip()装饰,直接跳过不执行。
    第二条用例通过@unittest.skipIf()装饰,当条件为真时不执行。
    第三条用例通过@unittest.skipUnless()装饰,当条件为真时执行。
    第四条用例通过@unittest.expectedFailure装饰,不管执行结果是否失败,统一标记为失败,但不会抛出错误信息。

    这些也可以直接作用于测试类

    #coding:utf-8
    import unittest
     ……………
    @unittest.skip("直接跳过测试类") 
    class MyTest(unittest.TestCase):
    ……………

      

  • 相关阅读:
    缠中说禅 摘选
    laravel中不使用 remember_token时退出报错,如何解决?
    关于Ubuntu拒绝root用户ssh远程登录
    laravel中类似于thinkPHP中trace功能
    js原生语法实现表格操作
    使用clear来清除localStorage保存对象的全部数据
    JS设置CSS样式的集中方式
    thinkphp两表联查并且分页
    生于忧患,死于安乐 (先秦:孟子及其弟子)
    在对年轻人最不友好的环境中,刘裕起于阡陌,成就霸业
  • 原文地址:https://www.cnblogs.com/Rita-LJ/p/11778137.html
Copyright © 2011-2022 走看看