首頁 >後端開發 >Python教學 >實例解析Python單元測試及unittest框架用法

實例解析Python單元測試及unittest框架用法

coldplay.xixi
coldplay.xixi轉載
2020-07-09 17:26:272682瀏覽

實例解析Python單元測試及unittest框架用法

範例題取用登入模組:程式碼如下

def login_check(username,password):

  ''' 登录校验的函数
  :param username:账号
  :param password: 密码
  :return: '''

  if 6<=len(password)<=18:
    if username==&#39;admin&#39; and password==&#39;123456&#39;:
      return {&#39;code&#39;:0,&#39;msg&#39;:&#39;登录成功&#39;}
    else:
      return {&#39;code&#39;:1,&#39;msg&#39;:&#39;账号密码不正确&#39;}

  else:
    return {&#39;code&#39;:1,&#39;msg&#39;:&#39;密码长度在6-18之间&#39;}

#單元測試是什麼:

單元測試( unit testing),是指對軟體中的最小可測試單元進行檢查和驗證
如何進行單元測試:

第一我們得寫出測試用例,而測試用例主要的要素為(編號,標題,前置條件,操作步驟,預期結果,實際結果)

unittest框架核心的四個概念

1.TestCase:testcase的實例就是一個測試案例

2.TestSuite:多個測試案例集合在一起

#3.TextTestRunner:用來執行測試案例

#4.fifixture:測試案例環境的建構與銷毀,測試前環境的搭建(setUp),執行測試程式碼(run)以及測試後環境
的還原(tearDown)

登入測試案例標題如下等等:

1.使用者名稱密碼正確

2.使用者名稱不存在

#3.密碼小於6位元

4.密碼大於18位元

5. 使用者名稱為空白然後我們執行測試案例

import unittest      #引用单元测试模块
from day8.登录测试代码 import login_check  #将登陆模块代码引入
class Login_test(unittest.TestCase):
  def setUp(self): 
    print("执行用例前都会执行这个方法,类似前置条件")
  def tearDown(self):
    print("用例执行完后 都会执行该方法")
  def test_login_success(self):  #登录成功用例
    result=login_check(&#39;admin&#39;,&#39;123456&#39;)  #这个是实际结果
     expect=&#39;登录成功&#39;          #这个是预期结果
     
    self.assertEqual(result[&#39;msg&#39;],expect)  #将实际结果和预期结果做比较,输出完全相同则通过 输出结果是OK

  def test_username_nonentity(self):   #用户名不存在用例
    result=login_check(&#39;admininin&#39;,&#39;111222333&#39;)
    expect=&#39;用户名不存在&#39;
    self.assertEqual(expect,result[&#39;msg&#39;])  #反之,如果不通过输出结果如下图

註:

一個def方法就是一個測試案例

方法名稱就是使用案例的標題,使用案例方法名稱一定要已text_開頭

相關學習推薦:python影片教學

以上是實例解析Python單元測試及unittest框架用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:jb51.net。如有侵權,請聯絡admin@php.cn刪除