學(xué)習使用unittest模塊測試函數(shù)和類
11.1 測試函數(shù)
def get_address(city_name, country_name):
? ? full_address = city_name.title() + ', ' + country_name.title()
? ? return full_address #這里是返回值,如果是print則是
先創(chuàng)建一個city_functions.py的程序包含這個函數(shù)
import unittest
from city_functions import get_address
class NameTestCase(unittest.TestCase):
? ? def test_city_country(self): #以test_開頭,測試函數(shù)自動運行
? ? ? ? formatted_name = get_address('abc', 'abcd') #將函數(shù)結(jié)果存儲在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與測試函數(shù)類似
11.2.3 方法setUp()
原理是創(chuàng)建調(diào)查對象并且存儲進self.前綴的屬性中
然后在測試的方法內(nèi)任意使用