Heim >Backend-Entwicklung >Python-Tutorial >Beispielanalyse von Python-Unit-Tests und der Nutzung des Unittest-Frameworks
Die Beispielfrage verwendet das Anmeldemodul: Der Code lautet wie folgt
def login_check(username,password): ''' 登录校验的函数 :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之间'}
Was ist Unit-Test:
Unit-Tests (Unit-Tests) beziehen sich auf die Inspektion und Verifizierung der kleinsten testbaren Einheit in der Software
So führen Sie Unit-Tests durch:
Zuerst müssen wir Testfälle schreiben und die Hauptelemente von Testfällen für (Anzahl, Titel, Voraussetzungen, Operationsschritte, erwartete Ergebnisse, tatsächliche Ergebnisse)
Die vier Kernkonzepte des Unittest-Frameworks
1.TestCase
: Eine Testfallinstanz ist ein Testfall
2.TestSuite
: Mehrere Testfälle werden zusammengefasst
3. TextTestRunner
: Wird zum Ausführen von Testfällen verwendet
4.fifixture
: Einrichten und Zerstören der Testfallumgebung, Einrichten der Vortestumgebung (setUp), Ausführen des Testcodes (run ) und die Post-Test-Umgebung
Restore (tearDown)
Der Titel des Login-Testfalls lautet wie folgt:
Der Benutzername und Passwort sind korrekt
2. Der Benutzername existiert nicht
3 Das Passwort besteht aus weniger als 6 Zeichen
Das Das Passwort besteht aus mehr als 18 Zeichen
5. Der Benutzername ist leer, dann führen wir den Testfall aus
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('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']) #反之,如果不通过输出结果如下图
Hinweis:
a Die Def-Methode ist ein Testfall
Der Methodenname ist der Titel des Anwendungsfalls Der Name der Case-Methode muss mit text_ beginnen
Verwandte Lernempfehlungen: Python-Video-Tutorial
Das obige ist der detaillierte Inhalt vonBeispielanalyse von Python-Unit-Tests und der Nutzung des Unittest-Frameworks. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!