优草派  >   Python

如何使用python做单元测试?利用Python做单元测试的技巧

翟嘉慧            来源:优草派

很多刚刚接触编程的小伙伴不太理解单元测试,那么为什么要进行单元测试呢?其实主要是为了提高代码的正确,同时确保重构不出错。接下来我们一起学习怎么用python做单元测试吧。

如何使用python做单元测试?利用Python做单元测试的技巧

一、单元测试

在Python中,如果想进行单元测试的话,直接用是不行的,我们要借助一个单元测试的框架为unittest,它在Python中是一个内置的框架,在使用的时候稍微有点麻烦,在操作的过程中,都要写TestCase类,并且要使用到几个 assertEqual, assertNotEqual等断言方法。如果我们在使用pytest运行测试统一用assert语句就行,需要兼容unittest,对于很多知名的开源项目都应用到它,比如PyPy、Sentr等。在这里我们只需要掌握一些基础知识就可以,具体的操作如下:

二、单元测试的应用

下面通过具体的代码,讲解一下Python单元测试的基本用法,在代码中是两种不同的测试类型,一种是验证返回值,还有一种是抛出异常,具体的代码如下:

基本用法一:

def add(a, b):
    """return a + b
    Args:
        a (int): int
        b (int): int
    Returns:
        a + b
    Raises:
        AssertionError: if a or b is not integer
    """
    assert all([isinstance(a, int), isinstance(b, int)])
    return a + b

 这是一个用来判断返回值的测试

 基本用法二:

def test_add():
    assert add(4, 5) == 9
    assert isinstance(add(4, 5) , int)
    with pytest.raises(Exception):    # test exception
        add('4', 5)

当程序遇到错误的时候,就会抛出异常。上面就是最基本使用,在使用的时候需要确保每一部分都正确,这样才能让一个函数的整体上包含出错。单元测试的目的就是为了提高代码的正确的同时,也提醒我们,函数完成的功能尽可能单一,这样才利于测试。

有关如何使用python做单元测试?利用Python做单元测试的技巧的内容就分享到这里了,希望大家通过对这篇文章的学习,能收获到一定的Python知识。

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行