[Java] [Spring] Tester le comportement de l'enregistreur

demande

Méthode

échantillon

Classe cible

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

class Sample {
  private Logger logger = LoggerFactory.getLogger(Sample.class);

  public void run() {
    logger.info("Exemple de message");
  }
}

Classe d'essai

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.mockito.ArgumentCaptor;
import org.mockito.Captor;
import org.junit.jupiter.api.Test;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;


class SampleTest {
  private Sample sample = new Sample();

  //Pour la confirmation de l'enregistreur Capturez les arguments passés
  @Captor
  ArgumentCaptor<String> logMessageCaptor;

  @Mock
  private Logger mockLogger;

  @BeforeEach
  public void setUp(){
    MockitoAnnotations.initMocks(this); //En faisant cela, vous pouvez remplacer les variables de champ de la classe testée par mock.
  }

  @Test
  void testRun() {
    sample.run();
    verify(mockLogger, times(1)).info(logMessageCaptor.capture()); //Ici, tout en vérifiant le nombre d'exécutions d'informations de l'enregistreur, l'argument est capturé
    assertEquals("Exemple de message", logMessageCaptor.getValue());
  }
}

À propos de vérifier

Recommended Posts

[Java] [Spring] Tester le comportement de l'enregistreur
Vérifiez le comportement de Java Intrinsic Locks avec bpftrace
Vérifiez le comportement de include, exclude et ExhaustedRetryException de Spring Retry
Je n'ai pas vraiment compris le comportement de Java Scanner et .nextLine ()
Les débutants en Java ont brièvement résumé le comportement de Array et ArrayList
[Java] Supprimer les éléments de la liste
[Édition Java] Histoire de la sérialisation
L'origine des expressions Java lambda
Filtrer le résultat de BindingResult [Spring]
L'histoire de ne pas connaître le comportement de String en passant par Java
Spring Java
Voir le comportement des mises à jour d'entités avec Spring Boot + Spring Data JPA
Le comportement de JS fonctionnant sur `Java SE 8 Nashorn` a soudainement changé
Tester le comportement de l'enregistreur de sortie de journal lors de l'utilisation d'API de journalisation externes telles que SLF4J
L'histoire de la rencontre avec l'annotation personnalisée Spring
Obtenez le résultat de POST en Java
Vérifiez le contenu du magasin de certificats Java
Examiner l'utilisation de la mémoire des éléments Java
[Java] Obtenez le jour d'un jour spécifique
Après 3 mois de formation Java et Spring
Mémo: [Java] Vérifiez le contenu du répertoire
Comparer les éléments d'un tableau (Java)
[jour: 5] J'ai résumé les bases de Java
À propos de l'affichage initial de Spring Framework
Quelles sont les fonctionnalités mises à jour de Java 13
Retour sur les bases de Java
Sortie du livre "Introduction à Java"
Fonctionnalités du framework Spring pour les développeurs Java
L'histoire de l'écriture de Java dans Emacs
[Java] Vérifiez le nombre d'occurrences de caractères
Jugement des nombres premiers Java
L'histoire de la comparaison de chaînes de bas niveau en Java
[Java] Gestion des Java Beans dans la chaîne de méthodes
JAVA: jar, aar, affichez le contenu du fichier
L'histoire de la fabrication d'un Othello ordinaire à Java
[Android] [Java] Gérer l'état de CheckBox de ListView
À propos du guide de démarrage officiel de Spring Framework
Inspectez le contenu de la sortie du journal pendant le test unitaire Java (aucune simulation utilisée)
A propos de l'ordre de description des propriétés système Java
À propos de l'idée des classes anonymes en Java
[Java] Accéder à l'URL signée de s3 (version signée 2)
L'histoire de l'apprentissage de Java dans la première programmation
Mesurer la taille d'un dossier avec Java
[Java] Obtenir la longueur de la chaîne de paire de substitution
[Java] La partie déroutante de String et StringBuilder
[Note] Java: mesure la vitesse de concaténation de chaînes
Essayez d'appeler le service CORBA depuis Spring (Java)
J'ai comparé les caractéristiques de Java et .NET
[Java] Faites attention au type de clé de la carte
Organisez les différences de comportement de @NotBlank, @NotEmpty et @NotNull avec Spring Boot + Thymeleaf
L'histoire de la montée de la série Spring Boot 1.5 à la série 2.1
RSpec-Résultats de la révision du code de test pour la «validation des utilisateurs»
Vérifions la sensation de Spring Boot + Swagger 2.0
Enregistreur standard Java
Création automatique du rapport de résultat du test unitaire Java
Calculer le score de similarité des chaînes de caractères avec JAVA
[JQuery] Procédure d'implémentation de la fonction de saisie semi-automatique [Java / Spring]
Essayez Progate Free Edition [Java II]