Logstash pour les devs - 26 - Tester ses pipelines avant la prod
Tester un pipeline Logstash avec des donnees de test, des assertions et de la CI. Valider avant de déployer.
36 articles sur le thème "tests".
Tester un pipeline Logstash avec des donnees de test, des assertions et de la CI. Valider avant de déployer.
Mesurer la complexité du code, la réduire, et comprendre son impact sur la testabilité
Stratégies pour ameliorer du code legacy en toute sécurité : strangler fig, tests de caracterisation, et petits pas
Comment typer ses tests proprement. Mocks type-safe, fixtures typees, tester les types eux-memes avec expect-type, et les pièges a éviter.
Refactoriser sans tests, c'est jouer a la roulette russe. Voici comment écrire les bons tests avant de toucher au code.
Ajouter des tests a du code existant sans tests. Approval testing, Golden Master et l'approche incrementale.
La différence entre mock, stub, fake et spy. Quand les utiliser avec bun test, et quand s'en passer.
Introduction aux tests de performance : benchmark, charge, stress et endurance. Pourquoi les tests fonctionnels ne suffisent pas.
Pourquoi tester son code, combien ca coûte de ne pas le faire, et comment commencer sans se decourager.
Tous les termes du testing expliques : assertion, coverage, fake, fixture, mock, spy, stub, TDD, et plus.
La stratégie de test depend du projet. CRUD simple, API complexe, frontend, microservices : pas les memes tests.
Écrire des tests end-to-end avec Playwright. Navigation, clicks, formulaires, assertions et debug.
TDD, BDD ou écrire les tests apres. Les trois approches comparees avec des exemples concrets et un avis tranche.
Le snapshot testing avec bun test : quand l'utiliser pour du HTML, du JSON ou des configs, et quand ca devient un piège.
Chaque bug corrige merite un test. Le workflow bug report -> test rouge -> fix -> test vert -> plus jamais ce bug.
Installer k6 et écrire ton premier test de charge. Virtual users, duration, checks et premiers résultats.
Comment trouver les limites de ton serveur avec un stress test. Le point de rupture, les cascades et ce qui casse en premier.
Écrire des tests unitaires avec le test runner natif de Bun. Setup, assertions, describe/it, beforeEach et couverture.
Un flaky test passe et echoue aleatoirement. Comment les détecter, les diagnostiquer et les eliminer définitivement.
Tester un use case de bout en bout avec des fakes. La différence entre test unitaire et test fonctionnel en archi hexagonale.
Co-location vs dossier __tests__, nommage, séparation par type, scripts et configuration bun test.
Le glossaire complet des trois series de tests. Tous les termes de unit a soak, de TDD a flaky, reunis en un seul article.
Les invariants en DDD : des conditions testables par état du cycle de vie. Comment les définir, les vérifier et les utiliser pour debugger en TypeScript.
Tester les timeouts, les retries et le comportement en mode degrade. AbortController, circuit breaker et chaos testing.
Pourquoi 100% de couverture ne garantit rien. Ce que le coverage mesure, ce qu'il rate, et un objectif raisonnable.
Tous les termes des tests de performance : latence, throughput, p95, VU, soak, spike, et plus.
Lancer des tests de 2h, 12h, 24h pour détecter les fuites lentes. Mémoire, connexions et degradation progressive.
Comment l'architecture hexagonale rend tes tests simples. Domaine testable sans base de donnees, adaptateurs interchangeables.
Les scénarios k6 avances : montee progressive, pic de charge, test d'endurance. Avec des exemples concrets sur une vraie API.
Détecter les fuites mémoire dans une app Node.js/Bun. Heap snapshots, process.memoryUsage() et causes courantes.
Mesurer les performances d'une fonction avec Bun. performance.now(), process.memoryUsage() et comparaison d'implementations.
La pyramide des tests de Mike Cohn : beaucoup d'unitaires, moins d'intégration, peu de e2e. Et les anti-patterns a éviter.
Pourquoi mocker la DB ne suffit pas. Setup PostgreSQL avec Docker pour des tests d'intégration fiables.
Comparer les outils de test de charge : k6, Artillery, Autocannon et wrk. Quand utiliser chaque outil.
Intégrer les tests dans GitLab CI. Paralleliser, cacher, échouer vite et afficher les résultats.
Verifier que ton API respecte son contrat : status codes, shape des réponses, headers. Avec des exemples Elysia.