Python零基础入门之编写测试实例

本文介绍了Python单元测试的基本概念和使用unittest模块进行测试的方法。从测试函数开始,讲解了测试类的编写,包括断言方法的使用,如assertEqual、assertIn等。此外,还展示了如何编写针对类的测试,包括setUp()方法的应用,帮助读者理解如何有效地进行代码测试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述

测试函数

首先是给出用于测试的代码,如下所示,这是一个接收姓和名然后返回整洁的姓名的函数:

def get_formatted_name(first, last):
    full_name = first + ' ' + last
    return full_name.title()

简单的测试代码:

first = 'kobe'
last = 'bryant'
print(get_formatted_name(first, last)) # 输出 Kobe Bryant

在 Python 标准库中的模块 unittest 提供了代码测试工具。这里介绍几个名词的含义:

  • 单元测试:用于核实函数的某个方面没有问题;
  • 测试用例:一组单元测试,它们一起核实函数在各种情形下的行为符合要求。
  • 全覆盖式测试用例:包含一整套单元测试,涵盖了各种可能的函数使用方式。

通常,最初只需要对函数的重要行为编写测试即可,等项目被广泛使用时才考虑全覆盖。

接下来就开始介绍如何采用 unittest 对代码进行测试。

首先是需要导入 unittest 模块,然后创建一个继承 unittest.TestCase 的类,并编写一系列类方法对函数的不同行为进行测试,如下代码所示:

import unittest
class NamesTestCase(unittest.TestCase):    '''
    测试生成名字函数的类
    '''
    def test_first_last_name(self):
        formatted_name = get_formatted_name('kobe', 'bryant')
        self.assertEqual(formatted_name, 'Kobe Bryant')
        unittest.main()

输出结果如下,显示运行的测试样例是 1 个,耗时是 0.001s。

.
----------------------------------------------------------------------
Ran 1 test in 0.001s
OK

上述是给了一个可以通过的例子,而如果测试不通过,输出是怎样的呢,如下所示:

# 添加中间名
def get_formatted_name(first, middel, last):    full_name = first + ' ' + middle + ' ' + last
    return full_name<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值