python unittest單元測(cè)試的步驟分析
說(shuō)明
1、導(dǎo)入unittest模塊。
2、導(dǎo)入被測(cè)對(duì)象。
3、創(chuàng)建測(cè)試類(lèi)unittest.TestCase。
4、重寫(xiě)setUp和tearDown(如果有初始化和結(jié)束)
5、以函數(shù)的形式寫(xiě)測(cè)試項(xiàng)目:函數(shù)名以test_開(kāi)頭。
6、unittest運(yùn)行測(cè)試用例。
實(shí)例
import unittest
class LoginCheckTest(unittest.TestCase):
def setUp(self) -> None:
print("每條用例")
def test_login(self):
self.assertEqual(0, login_check('lemon','123456').get('code'))
def test_password_error(self):
self.assertEqual(1,login_check('lemon','8888222').get('code'))
def test_user_error(self):
self.assertEqual(1, login_check('aaaabc', '123456').get('code'))
if __name__ == '__main__':
unittest.main()
實(shí)例擴(kuò)展:
python unittest單元測(cè)試實(shí)例
import unittest
class MyTest(unittest.TestCase): # 繼承unittest.TestCase
def tearDown(self):
# 每個(gè)測(cè)試用例執(zhí)行之后做操作
print('111')
def setUp(self):
# 每個(gè)測(cè)試用例執(zhí)行之前做操作
print('22222')
@classmethod
def tearDownClass(self):
# 必須使用 @ classmethod裝飾器, 所有test運(yùn)行完后運(yùn)行一次
print('4444444')
@classmethod
def setUpClass(self):
# 必須使用@classmethod 裝飾器,所有test運(yùn)行前運(yùn)行一次
print('33333')
def test_a_run(self):
self.assertEqual(1, 1) # 測(cè)試用例
def test_b_run(self):
self.assertEqual(2, 2) # 測(cè)試用例
if __name__ == '__main__':
unittest.main()#運(yùn)行所有的測(cè)試用例
生成一個(gè)測(cè)試報(bào)告
import HTMLTestRunner
import unittest
class MyTest(unittest.TestCase):#繼承unittest.TestCase
def tearDown(self):
#每個(gè)測(cè)試用例執(zhí)行之后做操作
print('111')
def setUp(self):
#每個(gè)測(cè)試用例執(zhí)行之前做操作
print(22222)
def test_run(self):
# self.assertEqual(1,1)
self.assertIs(1,1)
#測(cè)試用例
def test_run2(self):
# self.assertEqual(1,1)
self.assertIs(1,1)
#測(cè)試用例
def test_run3(self):
# self.assertEqual(1,1)
self.assertIs(1,1)
#測(cè)試用例
def test_run1(self):
# self.assertEqual(1,1)
self.assertIs(1,1)
#測(cè)試用例
if __name__ == '__main__':
test_suite = unittest.TestSuite()#創(chuàng)建一個(gè)測(cè)試集合
test_suite.addTest(MyTest('test_run1'))#測(cè)試套件中添加測(cè)試用例
#test_suite.addTest(unittest.makeSuite(MyTest))#使用makeSuite方法添加所有的測(cè)試方法
fp = open('res.html','wb')#打開(kāi)一個(gè)保存結(jié)果的html文件
runner = HTMLTestRunner.HTMLTestRunner(stream=fp,title='api測(cè)試報(bào)告',description='測(cè)試情況')
#生成執(zhí)行用例的對(duì)象
runner.run(test_suite)
#執(zhí)行測(cè)試套件
到此這篇關(guān)于python unittest單元測(cè)試的步驟分析的文章就介紹到這了,更多相關(guān)python unittest單元測(cè)試的過(guò)程內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
PyTorch搭建LSTM實(shí)現(xiàn)時(shí)間序列負(fù)荷預(yù)測(cè)
這篇文章主要為大家介紹了PyTorch搭建LSTM實(shí)現(xiàn)時(shí)間序列負(fù)荷預(yù)測(cè),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05
Qt5 實(shí)現(xiàn)主窗口狀態(tài)欄顯示時(shí)間
這篇文章主要介紹了Qt5 實(shí)現(xiàn)主窗口狀態(tài)欄顯示時(shí)間,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03
Pytorch如何加載自己的數(shù)據(jù)集(使用DataLoader讀取Dataset)
這篇文章主要介紹了Pytorch如何加載自己的數(shù)據(jù)集(使用DataLoader讀取Dataset)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12
對(duì)python中的six.moves模塊的下載函數(shù)urlretrieve詳解
今天小編就為大家分享一篇對(duì)python中的six.moves模塊的下載函數(shù)urlretrieve詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-12-12
用Python和MD5實(shí)現(xiàn)網(wǎng)站掛馬檢測(cè)程序
系統(tǒng)管理員通常從svn/git中檢索代碼,部署站點(diǎn)后通常首先會(huì)生成該站點(diǎn)所有文件的MD5值,如果上線(xiàn)后網(wǎng)站頁(yè)面內(nèi)容被篡改(如掛馬)等,可以比對(duì)之前生成MD5值快速查找去那些文件被更改,為了使系統(tǒng)管理員第一時(shí)間發(fā)現(xiàn),可結(jié)合crontab或nagios等工具2014-03-03
python在Windows8下獲取本機(jī)ip地址的方法
這篇文章主要介紹了python在Windows8下獲取本機(jī)ip地址的方法,涉及Python中socket包相關(guān)函數(shù)的使用技巧,需要的朋友可以參考下2015-03-03
python hmac模塊驗(yàn)證客戶(hù)端的合法性
這篇文章主要介紹了python hmac模塊驗(yàn)證客戶(hù)端的合法性,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-11-11
python筆記之mean()函數(shù)實(shí)現(xiàn)求取均值的功能代碼
這篇文章主要介紹了python筆記之mean()函數(shù)實(shí)現(xiàn)求取均值的功能代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07

