跳过预期和预期失败

在运行测试时,有时需要直接跳过某些测试用例,或者当用例符合某个条件时跳过测试,又或者直接将测试用例设置为失败。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):
……………

  

最新文章

  1. 在 Sublime Text 3 中配置编译和运行 Java 程序
  2. 第 16 章 CSS 盒模型[上]
  3. BurpSuite导出log配合SQLMAP批量扫描注入点
  4. Windows Store App 应用设置存储
  5. iOS开发之Pch预编译文件的创建
  6. openstack libtray
  7. What is therelationship between @EJB and ejb-ref/ejb-local-ref?
  8. SuperSpider——打造功能强大的爬虫利器
  9. python-pcap模块解析mac地址
  10. NHibernate的常见问题及解决方案
  11. macOS webview编程
  12. express 遇到问题 - Error: Can't set headers after they are sent
  13. Docker笔记——jdk镜像制作
  14. JavaEE学习之JAXB
  15. CodeForces7D 字符串hash + dp
  16. M - Pots
  17. ceph osd 批量删除
  18. 车道线识别/Opencv/传统方法
  19. 在echarts中自定义提示框内容
  20. hadoop之 HDFS-Hadoop存档

热门文章

  1. QTP(10)
  2. 转 SQL连接查询语句(内、外、交叉和合并查询)
  3. hutools之批量更新
  4. java学习笔记(二)分布式框架Dubbo+zookeeper搭建
  5. FutureWarning: get_value is deprecated and will be removed in a future release. Please use .at[] or .iat[] accessors instead print(labels_df.get_value(patients,col=1))
  6. SQL 修复表
  7. sklearn PCA的使用
  8. 【Python之路】特别篇--事件驱动与异步IO
  9. luogu p4141 消失之物(背包dp+容斥原理)
  10. 深度学习笔记(十一)网络 Inception, Xception, MobileNet, ShuffeNet, ResNeXt, SqueezeNet, EfficientNet, MixConv