python 测试代码

本章讲述python测试函数

编写一个函数
namefunc.py

#得到全名
def getfname(first,last):
    fullname= first + ' ' + last
    return fullname.title()

使用函数
names.py

from namefunc import getfname
print("enter q to quit")
while True:
    first = input("input first name: ")
    if first == 'q':
        break
    last = input("input last name: ")
    if last == 'q':
        break
    fullname = getfname(first,last)
    print("fullname = "+ fullname)

编写测试用例
test_namefunc.py

import  unittest #导入测试模块工具
from namefunc import getfname  #需要测试的函数

class NamesTestCase(unittest.TestCase):
    #测试getfname
    def test_first_last_name(self):
        #能够正确处理姓名吗
        fullname = getfname('ali','baba')
        self.assertEqual(fullname,'Ali Baba')

unittest.main()

此时用例通过
输出台信息


image.png

如果有异常,比如测试函数中全名多加了一个空格
输出台信息可能为


image.png

添加新测试
namefunc2.py

#得到全名
def getfname(first,last,middle =''):

    if middle:
        fullname = first + ' ' + middle + ' ' + last
    else:
        fullname = first + ' ' + last
    return fullname.title()

test_namefunc.py

import  unittest #导入测试模块工具
from namefunc2 import getfname  #需要测试的函数

class NamesTestCase(unittest.TestCase):
    #测试getfname
    def test_first_last_name(self):
        #能够正确处理ali baba姓名吗
        fullname = getfname('ali','baba')
        self.assertEqual(fullname,'Ali Baba')

    def test_first_last_middle_name(self):
        #能够正确处理ali baba ba 姓名吗
        fullname = getfname('ali','baba','b')
        self.assertEqual(fullname,'Ali B Baba')

unittest.main()

测试通过
输出台信息


image.png

unittest各种断言方法

方法 用途
assertEqual(a,b) 核实a == b
assertNotEqual(a,b) 核实a != b
assertTrue(x) 核实x为True
assertFalse(x) 核实x为false
assertIn(item,list) 核实item在list中
assertNotIn(item,list) 核实item不在list中
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Python提供了unittest模块并有相应的工具来让我们编写测试代码,我们可以使用它来编写测试用例 测试函数 ...
    So_ProbuING阅读 683评论 0 0
  • 编写函数或类时,还可为其编写测试。通过测试,可确定代码面对各种输入都能够按要求的那样工作。在程序中添加新代码时,你...
    Darren_Lin阅读 5,353评论 1 5
  • 编写函数或类时,还可为其编写测试。通过测试,可确定代码面对各种输入都能够按要求的那样工作。测试让你信心满满,深信即...
    阿耀王子阅读 1,561评论 1 2
  • 【早起挑战第4天】7点,算是成功一天吧,珍惜时间。 第11章 测试代码 编写函数或类时,还可为其编写测试。通过测试...
    Charles_DT阅读 332评论 0 2
  • 测试代码 学习如何使用python模块unittest中的工具来测试代码。 学习编写测试用例,核实一系列输入都将得...
    August________阅读 353评论 0 3

友情链接更多精彩内容