Python單元測試及unittest框架用法實例解析
例題取用登錄模塊:代碼如下
def login_check(username,password):
''' 登錄校驗的函數(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),是指對軟件中的最小可測試單元進行檢查和驗證
如何進行單元測試:
第一我們得寫出測試用例,而測試用例主要的要素為(編號,標題,前置條件,操作步驟,預期結果,實際結果)
unittest框架核心的四個概念
1.TestCase:一個testcase的實例就是一個測試用例
2.TestSuite:多個測試用例集合在一起
3.TextTestRunner:用來執(zhí)行測試用例
4.fifixture:測試用例環(huán)境的搭建和銷毀,測試前環(huán)境的搭建(setUp),執(zhí)行測試代碼(run)以及測試后環(huán)境
的還原(tearDown)
登錄測試用例標題如下等等:
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') #這個是實際結果
expect='登錄成功' #這個是預期結果
self.assertEqual(result['msg'],expect) #將實際結果和預期結果做比較,輸出完全相同則通過 輸出結果是OK

def test_username_nonentity(self): #用戶名不存在用例
result=login_check('admininin','111222333')
expect='用戶名不存在'
self.assertEqual(expect,result['msg']) #反之,如果不通過輸出結果如下圖

注意
一個def方法就是一個測試用例
方法名就是用例的標題,用例方法名一定要已text_開頭
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
django商品分類及商品數(shù)據(jù)建模實例詳解
這篇文章主要介紹了django商品分類及商品數(shù)據(jù)建模實例代碼內容,需要的朋友們學習參考下。2020-01-01
Python使用scipy.fft進行大學經(jīng)典的傅立葉變換
傅里葉變換是在高數(shù)是一個很重要的知識點,本文將介紹Python使用scipy.fft進行大學經(jīng)典的傅立葉變換,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-06-06

