JUnit Retour int valeur
Mon Junit test doit vérifier que le nombre retourné est la même que la taille de la liste
si mon test a été comme suit serait-ce codé correctement, je sens que ce n'est pas parce que j'ai les 2 dernières lignes sont toujours en cours pour être vrai?
public void testGetTotalPilots() {
ArrayList<Pilot> list = new ArrayList<Pilot>();
int size = list.size();
assert size == list.size();
}
- Vous utilisez la mauvaise affirmer - c'est la fonction intégrée de Java mot-clé, pas la Junit classe Assert. Devrait être le faire Valoir.Equals(taille, liste.size());
- Ou utiliser TestNG au lieu de JUnit, où à l'aide de
assert
est valide
Vous devez vous connecter pour publier un commentaire.
Vous pouvez le tester, par exemple, si la liste est vide (taille == 0) lorsque la liste a été créée:
Et/ou vous pouvez ajouter des entrées à la liste et de vérifier si le nombre est défini en conséquence:
Edit:
Lorsque les tests unitaires d'une liste (
ArrayList
), vous devriez penser à la façon dont la liste peut être utilisée (scénarios de test). Par exemple,assert
est un langage java caractéristique de ne pas être utilisé dans les tests. Elle est évaluée avec option d'exécution-ea
seulement! Sans cette option, votre code tests de rien! Veuillez utiliser les méthodes dejunit.framework.Assert
commeassertEquals()
.D'autre part, je ne suis pas sûr, ce test devrait tester. liste.size() est toujours la liste.taille(). Vous devez faire valoir un certain nombre. Aussi, vous n'avez pas besoin de test ArrayList - il fonctionne. Où est votre code de test?
Sûrement votre test doit faire quelque chose d'abord, c'est à dire déclencher le code que vous faites des tests pour remplir la liste de tableaux de Pilote objets? Donc, vous serait alors le code de test comme suit:
... sinon vous êtes juste de ne pas analyser quoi que ce soit.
Je ne dis pas que tu test est correct.
Le changement ci-dessus assurez-vous que votre test est toujours à zéro, comme cela apparaît au résultat attendu. Si elle n'est pas à zéro, alors que le test échoue.
Que vous souhaitez tester ici est ArrayList. Pourquoi? Je ne pense pas qu'il est particulièrement utile de passer votre temps à tester les fonctionnalités de base des classes de navire avec Java et qui sont dans une large utilisation.
Regardant le nom du test ce test devrait plutôt d'obtenir la liste de quelque chose et puis de tester des hypothèses sur la liste des pilotes. Quelque chose le long des lignes de
Ou, comme je l'ai dit dans l'autre post, ce faire;
Liste des pilotes = pilotDao.getAll();
les pilotes.ajouter(Pilote)
et ensuite, vérifiez si la droite en réaction à ce qui se passe, c'est à dire une exception est levée si vous ne voulez pas les gens à modifier la liste ou un appel ultérieur à
pilotDao.getAll();
renvoie une liste de taille 1.