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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • MT4软件IOS版如何下载

    MT4软件IOS版如何下载MT4软件,作为通用的外汇交易,成为多数人的选择。那么用苹果手机的用户如何下载MT4软件呢。苹果本的MT4软件有2种下载方式,一是在网页上下载安装包http://mt4.cnca.link/还有就是可以在苹果应用商店里搜索MT4软件。…

    2022年8月15日
  • c语言中uint32是啥意思_uint16数据类型

    c语言中uint32是啥意思_uint16数据类型C++的基础数据类型:C++的主要数据类型,主要分为三类:布尔型,整型(char型从本质上说,也是种整型类型,它是长度为1的整数,通常用来存放字符的ASCII码),浮点型。而*_t是typedef定义的表示标志,是结构的一种标注。即我们所看到的uint8_t、uint16_t、uint32_t都不是新的数据类型,而是通过typedef给类型起得别名。uint8_t/uint…

    2022年9月7日
  • MySQL——MySQL 图形化管理工具的介绍

    MySQL——MySQL 图形化管理工具的介绍文章目录MySQL——MySQL图形化管理工具的介绍1、MySQLWorkbench2、Navicat3、SQLyog4、DBeaver5、DataGripMySQL——MySQL图形化管理工具的介绍MySQL图形化管理工具极大地方便了数据库的操作与管理,常用的图形化管理工具有:MysQLWorkbench、phpMyAdmin、NavicatPreminum、MySQLDumper、SQLyog、dbeaver、MysQLODBcConnector、DataGrip。1、MySQL

    2022年6月30日
  • pycharm 2021.11.3 激活码[最新免费获取][通俗易懂]

    (pycharm 2021.11.3 激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html1M3Q9SD5XW-eyJsaWNlbnNlSWQi…

    2022年3月28日
  • 举例说明随机函数的应用python_Python生成50个随机数

    举例说明随机函数的应用python_Python生成50个随机数摘要:下文讲述Python代码中seed()函数的简介说明,如下所示:seed()函数功能用于改变随机数生成器的种子,常用于其它随机函数之前运行此函数seed()函数语法seed.seed([x])———参数说明—-x:任意数字———返回值说明—-无返回值seed()函数注意事项:1.使用seed()函数需引入包random(importrandom)2.设置随…

    2022年11月1日
  • python 列求和_python分数序列求和

    python 列求和_python分数序列求和欢迎访问少儿编程网(http://www.pxcodes.com)在python求和的方法:首先定义数组,并输入求和的整数;然后使用for循环,保存在数组中;接着调用sum函数,计算所有整数的和;**后输出计算得到的所有整数和。6MX少儿编程网-https://www.pxcodes.com6MX少儿编程网-https://www.pxcodes.com本教程操作环境:windows7系统、pyt…

    2022年10月27日

发表回复

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

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