直接上代码:

__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   (没想到是正确的)

序号 方法 说明
1 unittest.skip(reason)  强制跳转。reason是跳转原因
2 unittest.skipIf(condition, reason)  条件跳转,如果condition是True则跳转
3 unittest.skipUnless(condition, reason) 除非conditioin为True,才进行调整
4 unittest.expectedFailure() 标记该测试预期为失败 ,如果该测试方法运行失败,则该测试不算做失败

最新文章

  1. C#双色球——简单抽取中奖号码
  2. centos7 + VMware Workstation Pro
  3. redis 笔记06 发布与订阅、事务、慢查询日志、监视器
  4. C语言中动态分配数组
  5. html公用库
  6. 用js实现跳转提示页面
  7. MFC 点击改变文本 加法计时器 伸缩窗体
  8. OpenGL 的空间变换(下):空间变换
  9. java 键盘录入(Scanner)
  10. apache atlas源码编译打包 centos
  11. Vim里常见的几个不可见字符
  12. ___树形菜单Ztree.js显示.
  13. 关于 transparent rgba display:none; opacity visiblity 关于em
  14. linux下mysql开启远程访问权限 防火墙开放3306端口
  15. Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.0.2:resources 在我的myeclipse中新建maven工程总出现这个问题
  16. week3 团队博客作业
  17. MySql社区版和企业版的区别
  18. Apache POI 读写 Excel 文件
  19. SQL基础操作
  20. iOS 开发,混合使用 ARC 和非ARC

热门文章

  1. [TopCoder8600]MagicFingerprint
  2. 解决Eclipse 变量名的自动补全问题
  3. 为什么Linux的Fdisk分区时First Sector为2048?
  4. 使用 SVG 来实现波浪 (wave) 动画效果
  5. THINKPHP nginx设置路由为PATHINFO模式
  6. 【TCP/IP】IP路由选择
  7. Google Protocol Buffer安装编译及使用
  8. Ubuntu中彻底修改用户名及密码
  9. 怎么windows10下设置始终以管理员身份运行
  10. HTML5 Canvas 龟羊赛跑