0Pricing
Learn Rust Coding · Leçon

Tests d’intégration

Le répertoire des tests

Tests d’intégration est une leçon Learn Rust Coding gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Learn Rust Coding, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Learn Rust Coding comprend 4 leçons au total.

Que sont les tests d’intégration ?

Les tests d’intégration vérifient l’API publique de votre paquet comme le ferait un utilisateur externe. Ils se trouvent en dehors de src et ne peuvent appeler que des éléments publics.

Le répertoire tests

Cargo traite chaque fichier du répertoire tests/ de premier niveau comme un paquet de test distinct. Aucun module #[cfg(test)] n’y est nécessaire.

  • tests/api.rs
  • tests/parsing.rs

Une bibliothèque à tester

Les tests d’intégration ciblent un paquet de bibliothèque. Supposons que src/lib.rs expose une fonction publique.

// src/lib.rs
pub fn add(a: i32, b: i32) -> i32 {
    a + b
}

Écrire un test d’intégration

Dans tests/add.rs, importez le paquet par son nom et testez son API publique. Chaque fonction utilise toujours #[test].

// tests/add.rs
use my_lib::add;

#[test]
fn adds_two_numbers() {
    assert_eq!(add(2, 2), 4);
}

Uniquement les éléments publics

Comme les tests d’intégration constituent un paquet distinct, ils peuvent utiliser uniquement les éléments publics (pub). Les fonctions privées sont invisibles — exactement comme pour tout utilisateur réel.

Exécuter les tests d’intégration

cargo test exécute les tests unitaires et d’intégration ensemble. Chaque fichier de tests/ apparaît comme un binaire de test distinct dans la sortie.

cargo test

Exécuter un seul fichier

Utilisez --test avec le nom du fichier, sans son extension, pour exécuter un seul fichier de test d’intégration.

cargo test --test add

Utilitaires de test partagés

Pour partager du code de préparation sans en faire un fichier de test, placez les utilitaires dans tests/common/mod.rs. Les fichiers des sous-répertoires ne sont pas traités comme des paquets de test.

// tests/common/mod.rs
pub fn setup() {
    // shared setup logic
}

Utiliser l’utilitaire

Déclarez le module et appelez ses fonctions depuis votre test d’intégration.

// tests/api.rs
mod common;

#[test]
fn uses_setup() {
    common::setup();
    assert!(true);
}

Tests unitaires et d’intégration

Deux styles de test complémentaires :

  • Les tests unitaires se trouvent dans src, peuvent tester les éléments privés et sont rapides et ciblés
  • Les tests d’intégration se trouvent dans tests/ et testent l’API publique de bout en bout

Tester un paquet binaire

Les tests d’intégration ciblent les bibliothèques, pas les binaires. Une approche courante consiste à conserver la logique dans src/lib.rs et à avoir un src/main.rs léger qui l’appelle, afin que les tests unitaires et d’intégration puissent tous deux accéder au code.

// src/main.rs
fn main() {
    println!("{}", my_lib::add(2, 3));
}

Vérification rapide

Où se trouvent les tests d’intégration et à quoi peuvent-ils accéder ?

Récapitulatif

Vous avez découvert les tests d’intégration :

  • Les fichiers de tests/ sont des paquets de test distincts
  • Ils importent votre paquet par son nom et testent uniquement les éléments publics
  • cargo test --test name exécute un seul fichier
  • Les utilitaires partagés vont dans tests/common/mod.rs

Questions Fréquemment Posées

La leçon « Tests d’intégration » est-elle gratuite ?

Oui — le texte complet de « Tests d’intégration » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Learn Rust Coding, passe à CoddyKit PRO. Le cours Learn Rust Coding comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Tests d’intégration » ?

Le répertoire des tests Tu pratiques Learn Rust Coding avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Learn Rust Coding ?

Aucune expérience préalable n'est requise. Learn Rust Coding sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.

Combien de temps prend la leçon « Tests d’intégration » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Learn Rust Coding ?

Oui. Chaque leçon Learn Rust Coding inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Tests unitaires
  2. Tests d’intégration
  3. Commentaires de documentation
  4. Tests de documentation
← Retour à Learn Rust Coding