Dies ist nicht das erste Mal, dass ich von Unit-Tests höre, aber ich habe es noch nie verwendet. Wie teste ich ein Modul? Muss ich ein Testprogramm speziell für eine Einheit schreiben und dann den Code der Testeinheit zum Testen verwenden? Ich dachte auch. Nachdem ich das Spring-Framework kennengelernt hatte, wurde mir klar, worum es beim Unit-Testen geht.
Die erste Instanz der Set-Injection im vorherigen Artikel ist das Testobjekt. Führen Sie Unit-Tests durch.
1. Kopieren Sie das JAR-Paket
junit-3.8.2.jar (4.x fügt hauptsächlich Annotationsanwendungen hinzu)
2. Schreiben Sie Business-Kurse
public class User{ privateString username; publicString getUsername() { returnusername; } publicvoid setUsername(String username) { this.username= username; } //添加方法 publicString login() throws Exception{ if("admin".equals(username){ return"success"; }else{ return"error"; } } }
3. Definieren Sie die Testklasse
Erstellen Sie am besten ein separates Projekt für die Testklasse oder definieren Sie einen separaten Ordner für die Speicherung. Sie müssen junit.framework.TestCase erben
4 Testmethode
Die Testmethode muss öffentlich sein und sollte keinen Rückgabewert haben. Der Methodenname muss mit test beginnen und keine Parameter haben.
Die Testmethode hat eine Ausführungsreihenfolge entsprechend der Reihenfolge der Methodendefinition
Mehrere Testmethoden testen dieselbe Geschäftsmethode. Im Allgemeinen wird jede logische Zweigstruktur getestet.
public class TestUserextends TestCase{ publicvoid testUser_Success() throws Exception{ //准备数据 Useraction = new User(); action.setUsername("admin"); //调用被测试方法 Stringresult = action.login(); //判断测试是否通过 assertEquals("success",result); } }
Wenn der Test erfolgreich ist, wird das unten gezeigte Ergebnis angezeigt.
Wenn der Test fehlschlägt Methode, die den Test nicht besteht, dann wird angezeigt, bei welcher Methode der Fehler aufgetreten ist. Der grüne Balken im Bild oben wird rot.
5. Die Lebenszyklusmethode der Testklasse
//用来进行初始化操作 @Override protectedvoid setUp() throws Exception { System.out.println("setUp..."); } //用来做销毁操作 @Override protectedvoid tearDown() throws Exception { System.out.println("tearDown..."); }
setUp-Methode wird einmal vor jeder Testmethode ausgeführt. Die TearDown-Methode wird nach jeder Testmethode einmal ausgeführt
Das Obige ist der Inhalt des Junit-Unit-Tests für Spring Framework Learning (3). Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php .cn)!