学习使用unittest模块测试函数和类
11.1 测试函数
def get_address(city_name, country_name):
full_address = city_name.title() + ', ' + country_name.title()
return full_address #这里是返回值,如果是print则是
先创建一个city_functions.py的程序包含这个函数
import unittest
from city_functions import get_address
class NameTestCase(unittest.TestCase):
def test_city_country(self): #以test_开头,测试函数自动运行
formatted_name = get_address('abc', 'abcd') #将函数结果存储在formatted_name中
self.assertEqual(formatted_name, 'Abc, Abcd') #断言,比较
unittest.main()
11.2 测试类
11.2.1 各种断言方法
assertEqual(a, b) #核实相等
assertNotEqual(a, b) #核实不等
assertTrue(x) #核实x为True
assertFalse(x) #核实为False
assertIn(item, list) #核实item在list中
assertNotIn(item, list) #核实item不在list中
测试类的demo与测试函数类似
11.2.3 方法setUp()
原理是创建调查对象并且存储进self.前缀的属性中
然后在测试的方法内任意使用