首页 / 知识
如何使用assertraisses()对python类的 __init__()方法进行单元测试?
2023-04-16 21:28:00

How do I unit test an __init__() method of a python class with assertRaises()?我有一堂课:
以及一个单元测试,它应该确保传递给构造函数的参数不正确,从而引发一个错误:
但我得到…
为什么?我应该在哪里定义这个错误对象?我认为它是作为默认的异常类型内置的,不是吗? 此示例中的"错误"可以是任何异常对象。我想您可能读过一个代码示例,它将其用作元语法占位符,表示"适当的异常类"。 所有异常的基类称为"异常",其大多数子类都是所涉及错误类型的描述性名称,如"oserror"、"valueerror"、"nameerror"、"type error"。 在这种情况下,适当的错误是"value error"(foo的值错误,因此是value error)。我建议将脚本中的"error"替换为"valueerror"。 这里是您试图编写的代码的完整版本,我复制了所有内容,因为您在原始示例中有一个奇怪的关键字参数,您似乎将其与赋值混淆,而我使用的是"failuntil"函数名,因为这是函数的非别名名称:
输出是:
单元测试库"UnitTest"中存在其他单元测试框架修复的缺陷。您将注意到,无法从调用上下文访问异常对象。如果要修复此问题,则必须在UnitTest的子类中重新定义该方法: 这是一个正在使用的示例:
我从python2.5复制了failUnlessRaises函数unittest.py,并对其进行了轻微修改。 这个怎么样?
我认为你在考虑例外。将描述中的"错误"一词替换为"例外",您应该可以继续:—) |
最新内容
相关内容
linux使用命令的方法?
linux使用命令的方法?,系统,信息,工具,标准,数据,命令,左下角,目录,文件夹,图标,linux的cd命令的使用方法1、cd ~:回到用户家目录。注:这得看你linux如何使用命令?
linux如何使用命令?,系统,信息,基础,软件,工作,一致,工具,名称,位置,情况,linux系统怎么用1、Linux的用处linux是一套免费开放源代码的操作系linux命令输入方法?
linux命令输入方法?,系统,电脑,密码,管理,地址,命令,网站,工具,首开,位置,linux终端输入~怎么弄中间在电脑上打开需要的Word文件进入。进入到文Python迭代器是什么?如何使用?
Python迭代器是什么?如何使用?,数据,异常,对象,工作,培训,概念,方法,关键字,之前,数据类型,迭代是重复反馈过程的活动,其目的通常是为了逼近所Python中什么是反射?使用方法有哪
Python中什么是反射?使用方法有哪些?,信息,培训,状态,术语,检测,反射,属性,对象,字符串,方法,反射这个术语在很多语言中都存在,并且存在大量的如何使用Python对GIF进行压缩
如何使用Python对GIF进行压缩,图片,地址,异常,位置,培训,代码,流程,项目,网上,中报,一、背景前天在给微信公众号上传文章的时候,文章里面有一Python中有哪些方法可以解压文件?
Python中有哪些方法可以解压文件?,工具,系统,工作,培训,文件,文件夹,方法,窗体,不同于,以下内容,在Python学习和日常使用中,很容易造成文件过大Python列表类型list合并有哪些方法
Python列表类型list合并有哪些方法?,培训,方法,列表,可能会,数组,切片,下文,字符串,数据类型,请看,在Python编程语言中,有各种数据类型,比如字符零基础学习Python的四种方法
零基础学习Python的四种方法,基础,代码,基础知识,培训,发展,时间,知识,书籍,初学者,练习,近年来,随着移动互联网的发展,对Python人才的需求越来如何在Python中定义类方法和修改类
如何在Python中定义类方法和修改类属性?,代码,方法,培训,对象,实例,定义,结果,示例,赋值,属性,Python中的类还可定义使用@classmethod修饰的类提高Python 效率的 5 种高级方法
提高Python 效率的 5 种高级方法,代码,数字,函数,有限,设备,项目,工具,培训,列表,内存,任何编程语言的高级特征通常都是通过大量的使用经验才关于Python的高效学习方法
关于Python的高效学习方法,基础,培训,资料,质量,技术,系统,情况,学习方法,高效,初学者,今天给大家分享一下Python高效的学习方法,尽管每个人的