python入门055:测试类(python测验1)
off999 2024-10-01 14:02 40 浏览 0 评论
一、测试类
1、断言方法
断言(assert)方法的作用是检验代码的执行是否符合预期的结果,检查你认为应该满足的条件是否确实满足。
断言如果该条件确实满足,程序就可以确信其中没有错误。如果不符合,就表明断言失败,python将引发异常。在输出窗口中显示错误提示。
python在unittest.TestCase 类中常用的断言方法包括:
在继承unittest.TestCase 的类中使用这些方法,可核实返回的值等于或不等于预期的值、返回的值为True 或False 、返回的值在列表中或不在列表中。
2、使用方法setUp()测试类
下例我们通过方法setUp()来测试调查问卷类FamousBookSurvey。
现在我们对上面的类FamousBookSurvey编写一个测试,对类的行为进行验证,编写测试类时,可以使用方法setUp()创建一系列实例并设置它们的属性,再在测试方法中直接使用这些实例。
如果在TestCase类中包含了方法setUp(),python将先运行它,再运行各个以test_打头的方法。这样,在你编写的每个测试方法中都可使用在方法setUp() 中创建的对象了。
在上例中,我们首先导入模块unittest,以及要测试的类FamousBookSurvey。模块 unittest提供了代码测试工具,再创建一个继承unittest.TestCase的,以test_开头的测试用例TestFamousBookSurvey。
使用方法setUp()创建一系列实例并设置它们的属性,setUp()方法做了两件事:创建一个调查对象self.my_survey = FamousBookSurvey(question);创建一个答案列表self.responses = ['红楼梦', '三国演义', '西游记', '水浒传']。存储这两样东西的变量名包含前缀self(即存储在属性中)。
这样,在测试方法test_responses()中,就可以直接使用在方法setUp() 中创建的对象self.my_survey和self.responses了。
在测试方法test_responses()中,使用两个for循环分别用来存储答案和确认答案是否包含在列表中,其中断言方法.assertIn()用来核实确认每个答案是否都包含在列表self.responses 中,如果包含,通过;如果不包含,则不通过。
代码行unittest.main()让python运行这个文件中的测试。
运行输出结果的第1行句点表明有一个测试通过了。Ran1testin0.021s,表明消耗的时间0.021秒。最后的OK表明该测试用例中的所有单元测试都通过了。
注意:运行测试用例时,在输出的第一行中看到的句点和字符数量可能各不相同,原因是在运行测试用例时, 每完成一个单元测试, python都打印一个字符—— 测试通过时打印一个句点; 测试引发错误时打印一个E ; 测试导致断言失败时打印一个F 。
二、动手实践
编写一个名为Employee 的类,其方法init() 接收名、姓和年薪,并将它们都存储在属性中。编写一个名为give_raise() 的方法,它默认将年薪增加5000美元,但也能够接受其他的年薪增加量。
为Employee 编写一个测试用例,其中包含两个测试方法:test_give_default_raise() 和test_give_custom_raise() 。使用方法setUp() ,运行这个测试用例,确认两个测试都通过。
相关推荐
- 鸿蒙系统适配第三方机型(鸿蒙 第三方适配)
-
最新华为官方公布了鸿蒙系统3.0支持的机型名单,具体如下。鸿蒙系统3.0升级名单:1.Mate系列:MateXs2、MateX2、MateXs、Mate40、Mate40Pro、Mate...
- imei怎么下载(imei changer apk)
-
如果您的steam序列号激活了,可以尝试以下方法下载:1.使用steam自带的下载工具,如“下载工具”,在软件的“下载”选项卡中选择“序列号下载”。2.在下载页面中,选择要下载的游戏,然后点击“下...
- 电脑系统优化软件哪个好(系统优化软件排行榜)
-
有必要用,非常好用,WINDOWS优化大师是一个网络上下载率极高的系统维护软件。多年未曾清理过系统和硬盘的电脑,系统内部将产生大量的垃圾文件、临时文件、废旧程序等等win10系统不需要经常更新,关闭...
- 重装系统后硬盘不见了(重装系统后磁盘不见了)
-
硬盘不见可能是因为重装系统时未正确安装驱动程序或未对硬件进行正确设置。你可以按以下步骤排查问题:进入BIOS检查硬盘是否被识别,尝试重新连接数据线和电源线,更新或安装适当的硬件驱动程序,或者使用硬件故...
- 冰封u盘装win7系统教程图解(冰封u盘启动装机教程)
-
1.查找激活工具:通常来说,Win7冰封系统已经包含了必要的驱动,所以如果你的电脑上并没有出现设备错误,那你就可以正常使用。如果你需要添加任何驱动,请尝试从厂商下载相应的驱动并执行自动安装程序。如果...
- uefi模式下找不到硬盘(uefi引导找不到硬盘)
-
首先你的安装盘必须是从UEFI启动的,然后它才能安装为UEFI启动。(条件:Fat32文件系统,efi文件夹)其次你MBR+BIOS的系统想换成GPT+EFI的,分区得做一点改动,腾出来100M的空...
- win7怎么安装蓝牙驱动程序(win7电脑安装蓝牙驱动教程)
-
方法如下: 1、再开始里点击控制版面,点击【硬件和声音】找到【添加设备】 2、之后再选择你要添加的蓝牙耳机。 3、系统就会提示正在与蓝牙适配器连接,然后提示添加成功。 4、点击“开始”-“...
- 怎么装系统win7旗舰版(电脑怎么装win7旗舰版)
-
1、目前支持64位的Wincc版本有:WinccV7Sp3、WinccV11Sp2、WinccV12。2、Wincc的V11与V12两个版本不能共存,即不能同时安装在同一台电脑上。上述这两...
- 怎样恢复桌面图标原样(怎样恢复桌面图标原样显示)
-
桌面图标恢复原样步骤方法如下:1.右键点击图标、并点击‘属性’两字,再点击‘打开文件位置‘2.然后找到文件所在的位置,然后暂时将文件在一旁放着3.然后再去点击‘更换图标’这四个字,找到刚刚打开的文件...
- 消除u盘写保护(怎么解除u盘写保护)
-
如果您的U盘启用了写保护功能,可以尝试以下几种方法来解除写保护:1.检查U盘上的物理写保护开关:部分U盘有一个物理的写保护开关,可以在U盘的外壳上找到。请确保开关处于非写保护状态。2.使用CMD命...
- microsoft国际版(微软国际版bing)
-
win10系统自带的edge浏览器不分国内版和国际版。搜索引擎Bing分为国内版和国际版,区别如下一、迎合不同人群的需求。国际版显得更加个性,他迎合了不同人群的需求,在收缩上更加方便化和智能化,后期可...
欢迎 你 发表评论:
- 一周热门
-
-
抖音上好看的小姐姐,Python给你都下载了
-
全网最简单易懂!495页Python漫画教程,高清PDF版免费下载
-
Python 3.14 的 UUIDv6/v7/v8 上新,别再用 uuid4 () 啦!
-
python入门到脱坑 输入与输出—str()函数
-
宝塔面板如何添加免费waf防火墙?(宝塔面板开启https)
-
飞牛NAS部署TVGate Docker项目,实现内网一键转发、代理、jx
-
Python三目运算基础与进阶_python三目运算符判断三个变量
-
(新版)Python 分布式爬虫与 JS 逆向进阶实战吾爱分享
-
慕ke 前端工程师2024「完整」
-
失业程序员复习python笔记——条件与循环
-
- 最近发表
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)
