Maison Java Javacommencer Utilisation d'un cadre de test en boîte blanche (JUnit)

Utilisation d'un cadre de test en boîte blanche (JUnit)

Nov 29, 2021 am 09:33 AM
junit

Framework Junit :

Junit est un framework de tests unitaires Java open source.

Aujourd'hui, nous présenterons junit5. junit5 se compose de trois modules de sous-projets différents, dont Junit Platform, Junit Jupiter et Junit Vintage. Il prend en charge Java 8 et supérieur. L'éditeur que j'utilise ici est IntelliJ IDEA. Il vous suffit de vérifier le résultat final pour savoir si l'interface de méthode de l'ensemble du projet est fluide. Chaque cas de test unitaire est relativement indépendant, démarré par Junit et automatiquement appelé. Pas besoin d'ajouter des instructions d'appel supplémentaires.

Ajoutez, supprimez et bloquez des méthodes de test sans affecter les autres méthodes de test.

Junit est principalement utilisé pour les tests en boîte blanche. Les étapes des tests en boîte blanche sont les suivantes :

1. Étape de planification des tests : Développer le calendrier des tests en fonction des spécifications des exigences.

2. Étape de conception des tests : selon la fonction du code, les cas de test sont conçus manuellement pour effectuer des tests fonctionnels de base. Selon les instructions de programmation, la structure du logiciel est divisée et les cas de test sont conçus selon certaines méthodes standardisées.

3. Phase d'exécution du test : saisissez les cas de test et obtenez les résultats des tests.

4. Étape de résumé du test : Comparez les résultats du test avec les résultats attendus du code, analysez la cause de l'erreur, recherchez et résolvez l'erreur.

Ensuite, introduisons les annotations à l'intérieur :

@Test : Représente la méthode de test sans déclarer aucun attribut.

@ParameterizedTest : Indique que la méthode est une méthode de test. De plus, cette annotation peut également permettre d'exécuter une méthode de test plusieurs fois en utilisant différentes personnes.

@RepeatedTest : Cette annotation permet à la méthode de test de personnaliser le nombre d'exécutions répétées.

@TestFactory : indique qu'une méthode est basée sur une source de données de test dynamique basée sur les données.

@Displayname : déclarez un nom d'affichage personnalisé pour la classe de test ou la méthode de test.

@BeforeEach : indique que la méthode spécifiée est exécutée avant l'exécution de chaque méthode de test.

@AfterEach : indique que la méthode spécifiée sera exécutée après l'exécution de chaque méthode de test.

@BeforeAll : Exécutée avant toutes les méthodes de test de la classe actuelle, cette méthode peut contenir du code d'initialisation.

@AfterAll : Exécuté après toutes les méthodes de test de la classe actuelle.

@Disabled : indique qu'une classe ou une méthode de test n'est pas valide.

Assertion :

Échec : le test d'assertion a échoué.

AssertTrue/asserFalse : affirmer vrai ou faux.

AssertNull/assertNotNull : l'assertion est nulle ou non nulle.

assertEquals/assertNotEquals : Affirmez que deux valeurs ne sont pas égales.

AssertArrayEquals : affirme que tous les éléments du tableau sont identiques.

AssertSame/assertNotSame : affirme si deux objets sont identiques.

AssertThrows/assertDoesNotThrow : affirme si une exception est levée.

AssertAll : Affirmer que plusieurs conditions sont remplies ;

Ci-dessous, nous créons une classe et créons plusieurs méthodes :

package test;//包机制
import java.lang.reflect.Array;
public class MixedOperation {
    public int mixeOperation(int x,int y){
        return division((x+y),y);
    }
    public int division(int x,int y){
        int result=(x/y);
        return result;
    }
    public static void main(String[] args) {
      MixedOperation mixedOperation=new MixedOperation();
      System.out.println(mixedOperation.mixeOperation(5,1));
    }
}
Copier après la connexion

Nous créons une classe appelée MixedOperation

package test;
import org.junit.jupiter.api.*;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.CsvSource;
public class MixedOperationTest {
    private MixedOperation mixedOperation;
    @BeforeEach
    public void init(){
      mixedOperation=new MixedOperation();
    }
    @Test
    public void successTest(){
        System.out.println("run a test:x=4,y=2");
        int result=mixedOperation.mixeOperation(4,2);
        Assertions.assertEquals(3,result);
    }
   /* @DisplayName("失败")
    public void errorTest(){`
        System.out.println("run a test:x=4,y=0");
        ArithmeticException exception=new ArithmeticException(
                ArithmeticException.class -> {
            mixedOperation.mixeOperation(4, 0);
        }
        );
    }*/
    @Disabled("参数")
    @Test
    @DisplayName("参数")
    @ParameterizedTest
    @CsvSource({"6,3,3","5,2,3","6,2,4"})
    public void caTest(int x,int y,int excepted){
        System.out.println("run a test :x="+x+"y="+y);
        System.out.println(excepted);
        int t= mixedOperation.mixeOperation(x,y);
        Assertions.assertEquals(excepted,t);
    }
    @Disabled
    @Test
    public void  Next(){
       System.out.println("抛出一个异常");
       System.out.println(Assertions.assertThrows(IllegalArgumentException.class, () ->mixedOperation.mixeOperation(2,0)));
    }
    @Disabled
    @Test
    void error(){
        Assertions.assertThrows(Exception.class,()->{Assertions.assertEquals(1,0);});
    }
    @Test
    void sure(){
        int result=mixedOperation.mixeOperation(4,2);
        Assertions.assertTrue(3==result);//断言相等
    }
}
Copier après la connexion

C'est ici que nous créons un test appelé MixedOperationTest Class ;

recommandations : "tutoriel vidéo Java"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment les annotations sont-elles utilisées pour les méthodes de test dans le framework JUnit ? Comment les annotations sont-elles utilisées pour les méthodes de test dans le framework JUnit ? May 06, 2024 pm 05:33 PM

Les annotations dans le framework JUnit sont utilisées pour déclarer et configurer les méthodes de test. Les principales annotations incluent : @Test (déclaration des méthodes de test), @Before (méthode exécutée avant l'exécution de la méthode de test), @After (méthode exécutée après la méthode de test). est exécuté), @ BeforeClass (méthode qui s'exécute avant l'exécution de toutes les méthodes de test), @AfterClass (méthode qui s'exécute après l'exécution de toutes les méthodes de test), ces annotations aident à organiser et à simplifier le code de test et à améliorer la fiabilité du code de test. en fournissant des intentions et des configurations claires. Lisibilité et maintenabilité.

Cadre de tests unitaires JUnit : tutoriel pour débutant Cadre de tests unitaires JUnit : tutoriel pour débutant Apr 18, 2024 pm 01:51 PM

JUnit est un framework de tests unitaires pour Java qui fournit des outils concis pour tester les composants d'application. Après avoir installé les dépendances, vous pouvez tester une classe en écrivant une classe de test unitaire contenant l'annotation @Test et vérifier les valeurs attendues et réelles à l'aide de méthodes d'assertion telles que assertEquals. JUnit fournit de nombreuses fonctionnalités telles que des méthodes de préparation, des messages d'échec et des mécanismes de délai d'attente.

Utilisation du framework de tests unitaires JUnit dans un environnement multithread Utilisation du framework de tests unitaires JUnit dans un environnement multithread Apr 18, 2024 pm 03:12 PM

Il existe deux approches courantes lors de l'utilisation de JUnit dans un environnement multithread : les tests monothread et les tests multithread. Les tests monothread s'exécutent sur le thread principal pour éviter les problèmes de concurrence, tandis que les tests multithread s'exécutent sur les threads de travail et nécessitent une approche de test synchronisée pour garantir que les ressources partagées ne sont pas perturbées. Les cas d'utilisation courants incluent le test de méthodes multi-thread-safe, telles que l'utilisation de ConcurrentHashMap pour stocker des paires clé-valeur, et des threads simultanés pour opérer sur les paires clé-valeur et vérifier leur exactitude, reflétant l'application de JUnit dans un environnement multi-thread. .

Framework de tests unitaires JUnit : avantages et limites de son utilisation Framework de tests unitaires JUnit : avantages et limites de son utilisation Apr 18, 2024 pm 09:18 PM

Le framework de tests unitaires JUnit est un outil largement utilisé dont les principaux avantages incluent des tests automatisés, un retour rapide, une qualité de code améliorée et une portabilité. Mais il présente également des limites, notamment une portée limitée, des coûts de maintenance, des dépendances, une consommation de mémoire et un manque de prise en charge d'intégration continue. Pour les tests unitaires d'applications Java, JUnit est un framework puissant qui offre de nombreux avantages, mais ses limites doivent être prises en compte lors de son utilisation.

Application du cadre de tests unitaires JUnit dans les projets Spring Application du cadre de tests unitaires JUnit dans les projets Spring Apr 18, 2024 pm 04:54 PM

JUnit est un framework de tests unitaires Java largement utilisé dans les projets Spring et peut être appliqué en suivant les étapes suivantes : Ajouter une dépendance JUnit : org.junit.jupiterjunit-jupiter5.8.1test Écrire des cas de test : utilisez @ExtendWith(SpringExtension.class) pour activer l'extension, utilisez les beans d'injection @Autowired, utilisez @BeforeEach et @AfterEach pour préparer et nettoyer, et marquez les méthodes de test avec @Test.

Framework de tests unitaires JUnit : conseils pour exécuter des cas de test en mode débogage Framework de tests unitaires JUnit : conseils pour exécuter des cas de test en mode débogage Apr 18, 2024 pm 03:54 PM

Dans JUnit, vous pouvez exécuter des cas de test en mode débogage en associant le programme d'exécution BlockJUnit4ClassRunner à l'aide de l'annotation @RunWith. Définissez des points d'arrêt pour suspendre l'exécution et examiner les variables. Utilisez System.out.println() pour générer des informations permettant de suivre l'exécution du code. Vérifiez les valeurs attendues et réelles à l'aide des méthodes d'assertion JUnitAssert.

Quelles sont les meilleures pratiques pour le framework de tests unitaires JUnit en Java ? Quelles sont les meilleures pratiques pour le framework de tests unitaires JUnit en Java ? Apr 18, 2024 pm 09:03 PM

Suivre les meilleures pratiques du framework de tests unitaires JUnit permet une vérification efficace du code : Écrire des tests indépendants Placer les tests aux endroits appropriés Utiliser des assertions pour valider judicieusement les résultats Suivre les conventions de dénomination (en commençant par test) Écrire des tests négatifs Utiliser Mocking et Stubbing pour isoler les dépendances Éviter d'utiliser des tests statiques variables pour supprimer le code en double et automatiser l'exécution des tests

Cadre de tests unitaires JUnit : un guide pour résoudre les problèmes courants de fuite de mémoire Cadre de tests unitaires JUnit : un guide pour résoudre les problèmes courants de fuite de mémoire Apr 18, 2024 pm 04:51 PM

Le framework de tests unitaires JUnit peut résoudre efficacement les problèmes courants de fuite de mémoire. Les problèmes de fuite courants incluent les références de variables statiques persistantes et les ressources non fermées. JUnit fournit des détecteurs de fuites et des outils pour analyser l'utilisation de la mémoire afin de localiser la source des fuites. Les solutions incluent l'utilisation de variables locales, de références faibles, la fermeture correcte des ressources et l'utilisation d'instructions try-with-resources. En suivant ces directives, les développeurs peuvent créer des environnements de test JUnit fiables et stables.

See all articles