python:unittest之跳过测试和预期失败的用例

发表于:2021-3-16 09:31

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:老张    来源:博客园

  在利用单元测试框架执行测试用例的过程中,有时只需要执行一部分用例,或者跳过某些暂不需要执行的用例,python的unittest框架就内置这样的功能。
  这篇文章介绍下在unittest框架中,如何跳过预期的测试用例。。。
  1、unittest.skip()方法
  跳过测试和预期失败的功能,是python3.1版本开始,出现的新功能。unittest支持跳过单个测试用例甚至整个测试类。
  skip()的各个方法说明如下:
   
  官方文档:https://docs.python.org/3.6/library/unittest.html
  2、unittest.skip()实例
#coding=utf-8
importunittest
importrequests
classDemoTest(unittest.TestCase):
status=200
defsetUp(self):
self.url='http://www.cnblogs.com/imyalost/'
@unittest.skip(u"无条件跳过该测试")
deftest_blog1(self):
#无条件跳过
r1=requests.get(self.url)
@unittest.skipIf(status>200,u"状态码大于200,就跳过该测试")
deftest_blog2(self):
#如果断言结果为真,则继续执行,否则跳过测试
r2=requests.get(self.url)
status2=r2.status_code
self.assertTrue(status2>self.status)
@unittest.skipUnless(status==404,u"状态码为200,则跳过")
deftest_blog3(self):
#除非结果为真,否则跳过该测试
r3=requests.get(self.url)
status3=r3.status_code
self.assertTrue(status3>self.status)
@unittest.expectedFailure
deftest_blog4(self):
#将测试用例标记为“预期失败”,如果测试执行时失败,则测试结果不计为失败
r4=requests.get(self.url+'/test4')
status4=r4.status_code
self.assertTrue(status4==self.status)
deftearDown(self):
pass
if__name__=='__main__':
unittest.main()
  代码简析:
  利用requests库的方法,访问我的博客首页,并且断言get请求的返回状态码,判断是否满足被装饰器修饰的条件,最终执行结果如下:
   
  以上就是unittest框架中关于跳过测试和预期失败的方法示例,仅供参考,具体实践请在实战中自行进行。

   上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号