当使用Python测试函数时,可能会出现AsserttionError,即断言错误。

根据错误提示可知,空值不能和测试期望结果Janis Joplin相同,仔细查看

正在测试的函数并没有返回值,也就是所谓的none,所以才会出现错误。

错误函数代码如下:

def get_formatted_name(first, last):"""获得一个整洁的完整的姓名"""full_name = first+' '+lastprint(full_name.title())

我们发现,单独进行运行代码时,反而没有问题,可是,一旦执行测试代码就会发生断言错误。

测试代码:

import unittest
from name_function import get_formatted_nameclass NamesTestCase(unittest.TestCase):"""测试函数name_function()"""def test_first_last_name(self):formatted_name = get_formatted_name('janis', 'joplin')self.assertEqual(formatted_name, 'Janis Joplin')if __name__ == '__main__':unittest.main()

运行测试代码时会发现traceback:

Traceback (most recent call last):File "\test_name_function.py", line 10, in test_first_last_nameself.assertEqual(formatted_name, 'Janis Joplin')
AssertionError: None != 'Janis Joplin'

当我们把欲测试的函数添加一个返回值时,即:

def get_formatted_name(first, last):"""获得一个整洁的完整的姓名"""full_name = first+' '+lastreturn full_name.title()

再重新运行测试代码,就不会发生错误了。

测试结果如下:

Ran 1 test in 0.003sOKProcess finished with exit code 0

注意:这里有的人可能是:

.
----------------------------------------------------------------------
Ran 1 test in 0.000sOK

这是电脑设置问题,但影响不大,句点的作用就是测试完的个数,结果中已经有了数字1,如果数量多的时候,不会有人去一个个数几个句点吧。

注意:

还有会发生不能测试的情况,这里很大可能是unittest调用主函数时,没有条件判断if __name__ == '__main__',即正确代码应为:

if __name__ == '__main__':unittest.main()

而不是:

unittest.main()

Python测试函数出现错误问题解决:AssertionError: None != ‘Janis Joplin‘相关推荐

  1. python中语法错误-Python3 错误和异常

    Python3 错误和异常 作为 Python 初学者,在刚学习 Python 编程时,经常会看到一些报错信息,在前面我们没有提及,这章节我们会专门介绍. Python 有两种错误很容易辨认:语法错误 ...

  2. python错误-python异常与错误区别

    错误和异常概念 错误: 1.语法错误:代码不符合解释器或者编译器语法 2.逻辑错误:不完整或者不合法输入或者计算出现问题 异常:执行过程中出现万体导致程序无法执行 1.程序遇到逻辑或者算法问题 2.运 ...

  3. python判断正确错误_python错误和异常

    Python3 错误和异常 作为 Python 初学者,在刚学习 Python 编程时,经常会看到一些报错信息,在前面我们没有提及,这章节我们会专门介绍. Python 有两种错误很容易辨认:语法错误 ...

  4. python中监控错误的语句_Python学习_07_错误、异常

    地毯式地过语法终于快要结束了... Python中的常见异常 1.NameError:尝试访问一个未初始化的变量 2. ZeroDivisionError:除数为0 3. SyntaxError:Py ...

  5. python使用-Python3 错误和异常

    Python3 错误和异常 作为 Python 初学者,在刚学习 Python 编程时,经常会看到一些报错信息,在前面我们没有提及,这章节我们会专门介绍. Python 有两种错误很容易辨认:语法错误 ...

  6. Python读取中文Excel问题解决

    Python读取中文Excel问题解决 为什么读取中文Excel会出错 两个难题 试验结果 为什么读取中文Excel会出错 在计算机中,一个字节(byte)有8个比特,即可以表达2^8次方即256个字 ...

  7. 微信-js sdk invalid signature签名错误 问题解决

    微信-js sdk invalid signature签名错误 问题解决 参考文章: (1)微信-js sdk invalid signature签名错误 问题解决 (2)https://www.cn ...

  8. 初学Python常见异常错误,总有一处你会遇到!

    初学Python常见异常错误,总有一处你会遇到! 参考文章: (1)初学Python常见异常错误,总有一处你会遇到! (2)https://www.cnblogs.com/xxpythonxx/p/1 ...

  9. pip安装提示PermissionError: [WinError 5]错误问题解决

    pip安装提示PermissionError: [WinError 5]错误问题解决 参考文章: (1)pip安装提示PermissionError: [WinError 5]错误问题解决 (2)ht ...

最新文章

  1. JQuery(选择器)
  2. 【撸啊撸 Docker】搭建 Jenkins
  3. Odoo访问权限(一)
  4. MFC多语言实现方法
  5. 华中师范大学邮箱matlab,18春[华中师范大学]华师《Matlab基础与应用》在线作业1(100分)...
  6. 随笔编号-04 AngularJS 相关小问题解决方案合集
  7. 中公电网计算机类题库讲练版百度云,2021电网二批招聘考试题库:计算机类练习题(5)...
  8. 关于编码问题,报错:'gbk' codec can't encode character '\u3164' in position 0: illegal multibyte sequence...
  9. 使用DSIM给WIN7集成SP2、IE11、USB3
  10. mysql如何从两个表取出内容_如何从mysql中的两个表中获取数据?
  11. 关羽卖枣,张飞杀猪,二人何以有“盖世武功”?
  12. 防空系统效能评估软件攻略
  13. Linux安装PHPwind
  14. 电路与电子4.3.5隔离放大器和音频功率放大器
  15. 教你制作挂件头像 | 小程序七十二变之 canvas 绘制国旗头像
  16. Linux内核API之class_create与class_destroy
  17. 煮一壶清茶,悟一种人生
  18. QBC 通过Heibernate查询 discriminator 配置的属性问题
  19. 通达信l-2服务器文件,分享两个手机版通达信的指标源码(PC端也适用)
  20. Android 开源图片裁剪工具、图片显示工具分享

热门文章

  1. Rhapsody freeMaker 将任意HL7转XML
  2. 单片机实验装置,单片机课程教学配套实验设备
  3. QT实现抖音网红表白软件
  4. spring cloud 配置文件application.yml和bootstrap.yml 的定位,区别和联系
  5. Lr预设(手机+电脑):极简主义白色明亮时尚Ins摄影Lightroom调色滤镜预设
  6. UNP 学习笔记(一):简介
  7. OpenGL环境搭建:vs2013+freeglut2.8.1+glew1.7.0+gltools
  8. 美通企业日报 | 洽洽开启中国坚果品牌全球化新征程;创维上半年净利同比增两成...
  9. java y z x_表示关系 X=Y=Z 的 JAVA 语言表达式为_机械工程材料及热处理答案_学小易找答案...
  10. ZYNQ学习之路16.SDSoC开发环境介绍