Tests Unitaires
Expert
Corriger un test avec timer asynchrone non maîtrisé

Type d'évaluation

Mise en situation réelle

Analyse

Intelligence Artificielle

Compétences ciblées

fake timers
async testing
jest
bugfix
timing

Scénario Technique

Contexte Une fonction debounce(fn, delay) utilise setTimeout pour retarder l’exécution. Le Problème Le test suivant échoue aléatoirement : function debounce(fn, delay) { let timer; return (...args) => { clearTimeout(timer); timer = setTimeout(() => fn(...args), delay); }; } test("appelle la fonction après délai", () => { const mockFn = jest.fn(); const debounced = debounce(mockFn, 1000); debounced(); expect(mockFn).toHaveBeenCalled(); }); Le test ne contrôle pas le temps. Contraintes Utiliser des fake timers pour rendre le test déterministe. Livrable attendu Un test corrigé maîtrisant l’horloge et validant correctement le comportement.

Prêt à évaluer ce talent ?

Accédez à l'interface de test complète pour soumettre votre architecture ou votre code.

Commencer le Défis
    Tests Unitaires - Corriger un test avec timer asynchrone non maîtrisé | Test Technique & Recrutement