[JAVA] [IntelliJ IDEA] Effectuer un test d'unité

introduction

La procédure lorsque ** J Unit Test ** est effectué dans ** IntelliJ IDEA **, qui est un environnement de développement intégré, est résumée. intellij-idea-java-ide_orig.jpg

** JUnit Test ** est un test *** qui vérifie si le programme créé fonctionne correctement dans tous les cas.

Par exemple, même si vous préparez une variable de type int et attendez l'entrée standard avec le contenu "Veuillez entrer votre numéro préféré de 1 à 9!", Une erreur se produira si l'utilisateur tente de saisir une chaîne de caractères (type chaîne). droite!

Mais quand je l'ai compilé, il n'y a pas eu d'erreur. .. .. Quelle expérience

Testons à l'avance le code dont vous ne savez pas ce qui va se passer avec les données d'entrée! C'est ** J Unit Test **.

procédure

1. Préparez le fichier Java que vous souhaitez tester Junit

Screen Shot 2019-05-09 at 11.19.13.png Cette fois, ** JUnit Test ** est effectué sur la classe `` Person '' de ce `` Main.java```.

2. Créez un répertoire de test

Screen Shot 2019-05-09 at 9.56.23.png Faites un clic droit avec le fichier de projet `` .iml``` sur lequel vous travaillez actuellement sélectionné

new --> directory

Screen Shot 2019-05-09 at 9.56.44.png

Dans cet exemple, le nom du répertoire est Test```

3. Définissez le répertoire créé pour les tests

File-->Project Structure

Screen Shot 2019-05-09 at 9.57.05.png

`Modules -> Test``` (répertoire de test créé précédemment) -> clic droit-> `Tests```

Screen Shot 2019-05-09 at 9.57.24.png

Lorsqu'il est défini sur le répertoire ** Tests **, la couleur du répertoire de test passe au vert, comme indiqué à gauche dans la figure ci-dessous. Screen Shot 2019-05-09 at 9.58.06.png

4. Créez une classe de test

Placez le curseur sur la classe que vous souhaitez tester (`` Personne '' dans cet exemple) et sélectionnez la marque orange de l'ampoule

create test Screen Shot 2019-05-09 at 11.45.33.png

Sélectionnez Test de la bibliothèque '' -> JUnit4``` (ou` JUnit5```)

Screen Shot 2019-05-09 at 11.46.05.png

Ensuite, une classe de test avec [classe sélectionnée] Test '' 'est générée dans le répertoire de test créé.

Dans cet exemple, la classe `` PersonTest '' est générée.

5. Modifier la classe de test

Screen Shot 2019-05-09 at 10.17.10.png

Je l'ai édité comme ça.

assertEquals(Résultat prospectif,classe.une fonction)



 Il est décrit comme suit.

 En d'autres termes, dans cet exemple, la chaîne de caractères `` `` Shuto``` est attendue comme valeur de retour de `` `` Person.name () `` ``.


## 6. Courir
 <img width="931" alt="Screen Shot 2019-05-09 at 10.18.26.png " src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/377231/eefc65e7-a3c7-3389-29f9-961cf24cb14b.png ">
 <img width="530" alt="Screen Shot 2019-05-09 at 10.23.30.png " src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/377231/a190a14c-e313-dc33-37f7-d8a615e8bf51.png ">

```run 'persontest'```

 <img width="803" alt="Screen Shot 2019-05-09 at 13.43.23.png " src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/377231/9a55d013-3acb-c79e-07e2-d4579d54cc2a.png ">

 Si vous obtenez le résultat attendu, une ligne verte apparaîtra pendant un moment et `` `` Tests réussis '' `` apparaîtra.

 Maintenant, changeons le résultat attendu en `` `` Shuto``` ---> `` `` bonjour``` et retestons.

 <img width="1005" alt="Screen Shot 2019-05-09 at 10.27.02.png " src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/377231/fd82b0ed-cdaa-cd55-98a1-91df0c5e44dc.png ">

 Puisque le résultat attendu et le résultat réel renvoyé étaient différents, il est devenu `` Tests fialed '' (devrais-je dire que c'était intentionnel).

 ```Attendu: ```Avant
 ```Actual: `` `Valeur effectivement retournée


 De cette manière, ** JUnit Test ** est effectué.


 À propos, comme le montre la figure ci-dessous, les pièces qui ont déjà été testées sont affichées en vert et les pièces qui n'ont pas été testées ou qui ont échoué sont affichées en rouge.

 <img width="662" alt="Screen Shot 2019-05-09 at 14.25.41.png " src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/377231/09a765c1-146b-df5c-6dbf-4f82f75ab485.png ">


 Je pense que ce sera un flux pour tester le code ainsi créé et l'améliorer un par un.

# en conclusion
 Cette fois, j'ai fait ** JUnit Test ** pour la classe Java créée.

 Une fois que vous avez appris à le faire, vous pouvez le tester très facilement.

 Merci pour la lecture.


Recommended Posts

[IntelliJ IDEA] Effectuer un test d'unité
Paramètres IntelliJ IDEA
Échantillon de bibliothèque de tests unitaires Java
Faites un test unitaire avec Junit.
Déploiement à chaud avec IntelliJ IDEA
Introduction à Micronaut 2 ~ Test unitaire ~
Test unitaire d'architecture avec ArchUnit
Essayez d'utiliser IntelliJ IDEA car vous ne devez le faire qu'une seule fois
Comment faire un test unitaire de Spring AOP
Java Unit Test Library-Artery-ArValidator valide les objets
Jugement de la date actuelle de la bibliothèque de tests unitaires Java
[Rails5] Rspec -Test d'unité lors de l'imbrication-
À propos du test d'application RSpec (test unitaire)
Importance de l'existence d'un test unitaire (auto-discussion)
Équivalence bibliothèque de tests unitaires Java-Artery / JUnit4-Array
Java + OpenCV 3.X avec IntelliJ IDEA
[RSpec] Test unitaire (avec gem: factory_bot)
[rails] Faisons un test unitaire avec Rspec!