python测试框架unittest如何设置用例优先级_python 的 unittest 测试框架中的测试依赖怎么解决呢…[通俗易懂]

python测试框架unittest如何设置用例优先级_python 的 unittest 测试框架中的测试依赖怎么解决呢…[通俗易懂]好啦,问题已解决,谢谢各位啦,感谢各位提出的思路,感谢@xiaoj(杰)和@keke在这里做个总结:xiaoj(杰)的方法defskipTest(value):defdeco(function):defwrapper(self,*args,**kwargs):ifnotgetattr(self,value):self.skipTest(‘跳过用例’)else:functio…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

好啦,问题已解决,谢谢各位啦,感谢各位提出的思路,感谢@xiaoj (杰) 和@keke

在这里做个总结:

xiaoj (杰) 的方法

def skipTest(value):

def deco(function):

def wrapper(self, *args, **kwargs):

if not getattr(self, value):

self.skipTest(‘跳过用例’)

else:

function(self, *args, **kwargs)

return wrapper

return deco

这个方法适用于当前的测试类中,当且仅当只依赖一个测试用例的时候使用,比如登录,获取用户信息,退出,在这 3 个测试用例中,获取用户信息和退出都依赖登录,所以可以使用这种依赖方法,如果当前的测试用例还依赖了第二个其他的测试用例,则本方法不适应

2.keke 的方法

def dependon(depend=None):

import functools

def wraper_func(test_func):

@functools.wraps(test_func)

def inner_func(self):

if depend == test_func.__name__:

raise ValueError(“{} cannot depend on itself”.format(depend))

print(“self._resultForDoCleanups”, self._resultForDoCleanups.__dict__)

failures = str([fail[0] for fail in self._outcome.result.failures])

errors = str([error[0] for error in self._outcome.result.errors])

skipped = str([error[0] for error in self._outcome.result.skipped])

flag = (depend in failures) or (depend in errors) or (depend in skipped)

test = unittest.skipIf(flag, ‘{} failed or error or skipped’.format(depend))(test_func)

return test(self)

return inner_func

对这个方法做了一下小小的改动,以上就是最新的代码。其中 depend 参数的类型为 string,值就是测试用例的方法名称。

可以适用于依赖的测试用例失败或错误时都跳过测试用例,有 dependon 装饰器标记的用例必须在用例 depend(test_login)之后执行

此方法适用于 python3.4+,如果是低版本的 python3,请将 self._outcome.result 修改为 self._outcomeForDoCleanups,如果你是 python2 版本,请将 self._outcome.result 修改为 self._resultForDoCleanups

最后,再次感谢各位,祝各位春节快乐!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/184850.html原文链接:https://javaforall.net

(0)
上一篇 2022年8月31日 下午11:16
下一篇 2022年8月31日 下午11:36


相关推荐

  • 【java】arcII码为0x01,0x02作为分隔符

    【java】arcII码为0x01,0x02作为分隔符不知道大家在拼接字符串的时候是怎么做的 是不是采用 或 nbsp 这样做有的时候不很安全 因为你不能确保你传入的字符串中没有这几个字符 那怎么做能保证万无一失呢 nbsp arcII 码为 0x01 0x02 的字符是键盘所不能输入的 因为用这个能保证万无一失 nbsp publicString Stringcode Connectioncn null

    2026年3月16日
    2
  • Docker 镜像小结 – 每天5分钟玩转 Docker 容器技术(21)

    Docker 镜像小结 – 每天5分钟玩转 Docker 容器技术(21)

    2022年3月3日
    52
  • 网络编程学习笔记一:Socket编程

    网络编程学习笔记一:Socket编程“一切皆Socket!”话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。——有感于实际编程和开源项目研究。我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠socket?那什么是socket?socket的类型有哪些?还有

    2022年7月13日
    18
  • NTP协议介绍

    NTP协议介绍查看原作者:转载自:NTP协议介绍(2013-06-1914:50:50)转载▼SNTP协议原理SNTP是简单网络时间协议(SimpleNetworkTimeprotocol)的简称,它是目前Internet网上实现时间同步的一种重要工程化方法。本文对SNTP协议的工作原理、工作模式、时间戳格式、信息帧格式进行了研究,最后对SNTP协议的应用提出一些有益的建议。关键词:SNTP;时间同步;时间戳格式;报文格式TitleAnalysisforSNTPprotocolAbstrac

    2022年10月12日
    4
  • MPEG-4、MPEG-4/AVC、H.264之间的联系与区别「建议收藏」

    MPEG-4、MPEG-4/AVC、H.264之间的联系与区别「建议收藏」当你在网上下载视频时,经常会看到MPEG-4、h.264等等词汇,它们之间有什么关系吗?  在视频编解码技术定义方面有两大标准机构。一个是国际电信联盟(ITU)致力于电信应用,已经开发了用于低比特率视频电话的H.26x标准,其中包括H.261、H.262、H.263与 H.264;另一个是国际标准化组织(ISO)主要针对消费类应用,已经针对运动图像压缩定义了MPEG

    2026年1月26日
    6
  • springboot框架有哪些技术_Springboot常用注解

    springboot框架有哪些技术_Springboot常用注解✍、SpringBoot框架技术总结(一)1、SpringBoot简介我们之前的SSM还是使用起来不够爽。还需要写很多的配置才能进行正常的使用。实现一个功能需要引入很多的依赖,尤其是要自己去维护依赖的版本,特别容易出现依赖冲突等问题。SpringBoot就能很好的解决上述问题。中文文档:https://doc.springcloud.io/spring-boot/index.html1.1、SpringBoot是什么SpringBoot是基于Spring开发的全新框架,相当于对Spri

    2022年8月20日
    12

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号