Python——单元测试


单元测试:
  程序开发过程中,写代码是为了实现需求。当我们的代码通过了编译,只是说明它的语法正确,功能能否实现则不能保证。 因此,当我们的某些功能代码完成后,为了检验其是否满足程序的需求。可以通过编写测试代码,模拟程序运行的过程,检验功能代码是否符合预期。
  单元测试就是开发者编写一小段代码,检验目标代码的功能是否符合预期。通常情况下,单元测试主要面向一些功能单一的模块进行。
  举个例子:一部手机有许多零部件组成,在正式组装一部手机前,手机内部的各个零部件,CPU、内存、电池、摄像头等,都要进行测试,这就是单元测试。
  在Web开发过程中,单元测试实际上就是一些“断言”(assert)代码。
  断言就是判断一个函数或对象的一个方法所产生的结果是否符合你期望的那个结果。 python中assert断言是声明布尔值为真的判定,如果表达式为假会发生异常。单元测试中,一般使用assert来断言结果。

1.assert(断言):

断言就是判断一个函数或对象的一个方法所产生的结果是否符合你期望的那个结果。 python中assert断言是声明布尔值为真的判定,如果表达式为假会发生异常。单元测试中,一般使用assert来断言结果。
用法:assert 表达式(布尔类型), 表达式为假时的提示信息
例:

a = 1
b = '1'
assert isinstance(b, int), "b不是int型数据"

在这里插入图片描述

a = [1, 2, 3, 4]
b = 4
c = 5
assert b in a, 'b不在a中'
assert c in a, 'c不在a中'

在这里插入图片描述

2.测试类:

(1)导入类:导入unittest包的TestCast类

from unittest import TestCast

(2)编写自定义测试类,继承TestCast类
(3)编写两个固定方法:

方法 描述
setup() 测试开始时自动调用,一般做初始化操作,如创建数据库(一般在该方法 中会开启测试模式:app.config[‘TESTING’] = True,可以报具体错误位置)
teardown() 测试结束时自动调用,一般做收尾工作删除数据库

(4)编写测试方法:
测试方法名必须以test开头
光标在哪个方法内就测试哪个方法,如果在方法外,则测试所有方法

猜你喜欢

转载自blog.csdn.net/zsh142537/article/details/83026069