創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務(wù)器提供商,新人活動買多久送多久,劃算不套路!
創(chuàng)新互聯(lián)公司是一家專業(yè)提供宕昌企業(yè)網(wǎng)站建設(shè),專注與成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、H5高端網(wǎng)站建設(shè)、小程序制作等業(yè)務(wù)。10年已為宕昌眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站設(shè)計(jì)公司優(yōu)惠進(jìn)行中。這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)如何使用Python單元測試及unittest框架,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
例題取用登錄模塊:代碼如下
def login_check(username,password): ''' 登錄校驗(yàn)的函數(shù) :param username:賬號 :param password: 密碼 :return: ''' if 6<=len(password)<=18: if username=='admin' and password=='123456': return {'code':0,'msg':'登錄成功'} else: return {'code':1,'msg':'賬號密碼不正確'} else: return {'code':1,'msg':'密碼長度在6-18之間'}
單元測試是什么:
單元測試(unit testing),是指對軟件中的最小可測試單元進(jìn)行檢查和驗(yàn)證
如何進(jìn)行單元測試:
第一我們得寫出測試用例,而測試用例主要的要素為(編號,標(biāo)題,前置條件,操作步驟,預(yù)期結(jié)果,實(shí)際結(jié)果)
unittest框架核心的四個概念
1.TestCase
:一個testcase的實(shí)例就是一個測試用例
2.TestSuite
:多個測試用例集合在一起
3.TextTestRunner
:用來執(zhí)行測試用例
4.fifixture
:測試用例環(huán)境的搭建和銷毀,測試前環(huán)境的搭建(setUp),執(zhí)行測試代碼(run)以及測試后環(huán)境
的還原(tearDown)
登錄測試用例標(biāo)題如下等等:
1.用戶名密碼正確
2.用戶名不存在
3. 密碼小于6位
4. 密碼大于18位
5. 用戶名為空然后我們執(zhí)行測試用例
import unittest #引用單元測試模塊 from day8.登錄測試代碼 import login_check #將登陸模塊代碼引入 class Login_test(unittest.TestCase): def setUp(self): print("執(zhí)行用例前都會執(zhí)行這個方法,類似前置條件") def tearDown(self): print("用例執(zhí)行完后 都會執(zhí)行該方法") def test_login_success(self): #登錄成功用例 result=login_check('admin','123456') #這個是實(shí)際結(jié)果 expect='登錄成功' #這個是預(yù)期結(jié)果 self.assertEqual(result['msg'],expect) #將實(shí)際結(jié)果和預(yù)期結(jié)果做比較,輸出完全相同則通過 輸出結(jié)果是OK
def test_username_nonentity(self): #用戶名不存在用例 result=login_check('admininin','111222333') expect='用戶名不存在' self.assertEqual(expect,result['msg']) #反之,如果不通過輸出結(jié)果如下圖
注意:
一個def方法就是一個測試用例
方法名就是用例的標(biāo)題,用例方法名一定要已text_開頭
上述就是小編為大家分享的如何使用Python單元測試及unittest框架了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道。