您好,登录后才能下订单哦!
今天小编给大家分享一下python单元测试如何写的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
unittest框架现在已经被python官方“收编”,unittest作为python标准包支持的库,在使用时只需要直接引入即可,不需要使用pip
进行安装。
单元测试代码可以简单的分成三步,分别为Given,When,Then。Given代表初始状态或者前置条件(可以简单的理解为数据输入);When代表行为发生,也就是进行测试动作;Then则是断言结果。
所以大部分情况下我们可以把单元测试的代码分为三块:
第一块代码负责测试前的数据处理,比如输入数据等。
第二块代码负责调用相关的功能模块进行测试。
第三块代码负责将测试的结果与我们期待的结果进行比对,从而得出测试结果(通过或者失败)。
以一个简单的计算功能为例,以下是这个计算模块的方法(文件名为calculator.py):
def add(a, b):
return a+b
def substract(a, b):
return a-b
我们设计了一些简单的测试代码(代码解读详见注释):
from calculator import * # 导入目标模块
import unittest # 导入unittest包
class TestCount(unittest.TestCase):
# 测试代码写在一个测试类里面
def test_add(self):
# 我们要测的是一个add函数,他传入两个参数
x = 5
y = 6
# 输入测试数据
res = add(x, y) # 将数据传递给被测函数,然后将结果存在res中
self.assertEqual(res, 11) # 使用断言判断res的值是否等于期待的值(这里期待为11)
# 如果res的值等于期待的值,则测试通过,反之测试失败
def test_substract(self):
# 这是另一个测试代码,使用简写的方式将第一二步合在一起
res = substract(11, 6)
self.assertEqual(res, 5)
以上代码只是用来介绍如何使用unittest,测试用例设计得比较随意。实际上测试用例设计需要考虑很多,要通过测试用例来证明目标代码的功能健全,所以对于一个简单的相加函数而言,这样的测试用例略显简单了。详细的测试用例设计小编以后会继续分享,关注W3C技术头条,学习如何编写更好的测试用例!
python作为一种代码易于理解的语言,实际上单元测试只在比较正规和大型的项目上会比较常见,unittest的更常见用法是与selenium集成为一个测试框架,由unittest提供比较好的用例管理和断言,由selenium进行功能测试。这时候unittest已经不算是单元测试工具了(是用例管理工具)。
以上就是“python单元测试如何写”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。