Sobes.tech
Junior

Connais-tu des types de tests?

sobes.tech IA

Réponse de l'IA

Oui, je sais.

Types principaux de tests:

  • Tests fonctionnels:

    • Tests de fumée (Smoke Testing)
    • Tests de sanité (Sanity Testing)
    • Tests d'intégration (Integration Testing)
    • Tests système (System Testing)
    • Tests de régression (Regression Testing)
    • Tests d'acceptation (Acceptance Testing) - y compris les tests alpha et bêta.
  • Tests non fonctionnels:

    • Tests de performance (Performance Testing) - inclut tests de charge, stress et volumétrie.
    • Tests de sécurité (Security Testing)
    • Tests d'utilisabilité (Usability Testing)
    • Tests de compatibilité (Compatibility Testing)
    • Tests de fiabilité (Reliability Testing)
    • Tests d'accessibilité (Accessibility Testing)
    • Tests de localisation (Localization Testing)
    • Tests d'internationalisation (Internationalization Testing)
  • Tests liés aux changements:

    • Tests de fumée (Smoke Testing)
    • Tests de régression (Regression Testing)
  • Tests structurels (basés sur le code):

    • Tests unitaires (Unit Testing)
    • Tests de boîte blanche (White Box Testing)
  • Tests basés sur l'expérience:

    • Tests exploratoires (Exploratory Testing)
    • Tests basés sur une liste de contrôle (Checklist-based Testing)
    • Tests basés sur des scénarios (Scenario-based Testing)

Exemples d'application de certains types:

Type de test Brève description Quand s'applique-t-il
Test de fumée Vérification des fonctions principales après compilation ou déploiement. Chaque nouvelle compilation.
Test de régression Vérifier que les changements n'ont pas introduit de nouveaux défauts dans la fonctionnalité existante. Après chaque changement ou correction de défauts.
Test de charge Vérifier le comportement du système sous charge attendue. Avant la mise en production, lors de changements d'architecture.
Test unitaire Tests des composants ou modules de code individuels. Lors de la phase de développement, par les développeurs.

En automatisation des tests, nous automatisons généralement les tests de régression, les tests d'intégration et, parfois, les tests de performance et de sécurité.

// Exemple de tests unitaires (JUnit)
public class Calculator {
    public int add(int a, int b) {
        return a + b;
    }
}

import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;

class CalculatorTest {
    @Test
    void testAdd() {
        Calculator calculator = new Calculator();
        assertEquals(5, calculator.add(2, 3), "L'addition de 2 et 3 doit être 5");
    }
}
# Exemple de test Selenium Webdriver (Python)
from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://www.google.com")
print(driver.title)
driver.quit()