Ce n'est pas la première fois que j'entends parler des tests unitaires, mais je ne les ai jamais utilisés. Comment tester un module ? Dois-je écrire un programme de test spécifiquement pour une unité, puis utiliser le code de l'unité de test pour tester ? Je le pensais. Après avoir appris le framework Spring, j'ai réalisé ce que sont les tests unitaires.
La première instance d'injection d'ensemble dans l'article précédent est l'objet de test. Effectuer des tests unitaires.
1. Copiez le package jar
junit-3.8.2.jar (4.x ajoute principalement des applications d'annotation)
2. Écrivez des classes métier
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"; } } }
Il est préférable de créer un projet distinct pour la classe de test ou de définir un dossier séparé pour le stockage. Il doit hériter de junit.framework.TestCase
4. méthode de test
La méthode de test doit Elle est publique et ne doit pas avoir de valeur de retour Le nom de la méthode doit commencer par test et n'avoir aucun paramètre
La méthode de test a un ordre d'exécution, selon l'ordre. de définition de méthode
Plusieurs méthodes de test testent la même méthode métier. Généralement, chaque structure de branche logique est testée.
public class TestUserextends TestCase{ publicvoid testUser_Success() throws Exception{ //准备数据 Useraction = new User(); action.setUsername("admin"); //调用被测试方法 Stringresult = action.login(); //判断测试是否通过 assertEquals("success",result); } }
5. La méthode de cycle de vie de la classe de test
//用来进行初始化操作 @Override protectedvoid setUp() throws Exception { System.out.println("setUp..."); } //用来做销毁操作 @Override protectedvoid tearDown() throws Exception { System.out.println("tearDown..."); }