Finalisation des tests API Marketstack E2E
Billet #221 : Implémentation des tests API Marketstack E2E
Type : Automatisation / API Testing / Sécurité
Composants concernés : e2e/src/tests/marketstackApi.spec.ts, e2e/scripts/save-windows-secrets.ps1, e2e/scripts/run-with-windows-secrets.ps1, e2e/src/utils/requiredEnv.ts, e2e/package.json, .github/workflows/deploy.yml, docs/tests/pipeline.md, docs/fr/tests/pipeline.md, docs/features/chapter3.md, docs/fr/features/chapter3.md
1. Contexte et objectif
La présente tâche s'inscrivait dans la continuité de la Tâche 6 - Tests API avancés (Billet #172). Cette nouvelle étape visait un objectif plus concret : valider un véritable processus métier lié à Marketstack, et non plus seulement des scénarios API génériques.
Le but de cette tâche était de finaliser une suite utile pour l'exploitation du projet : tests orientés métier, exécution locale et CI sécurisée, et documentation alignée sur l'état réel du dépôt.
2. Problèmes initiaux identifiés
Avant cette intervention, le périmètre de validation restait incomplet sur des points critiques :
- pas de suite dédiée à Marketstack pour valider le flux métier principal ;
- exécution locale et CI non homogène sur la gestion de la clé API ;
- statut de certains cas de test non synchronisé avec l'implémentation réelle ;
- commandes utilisateur E2E/API dispersées dans la documentation.
3. Solutions implémentées
Les actions suivantes ont été mises en place :
-
Suite E2E Marketstack dédiée
- création de
marketstackApi.spec.tscentrée sur les appels utiles au métier ; - couverture des incidents clés (timeout, erreur serveur, JSON invalide) ;
- règles d'échec explicites en CI si la clé est absente ou invalide.
- création de
-
Sécurisation des secrets sous Windows (local)
- extension du coffre DPAPI local à
MARKETSTACK_API_KEY; - ajout du mode
-Target marketstackpour mise à jour ciblée ; - injection en mémoire uniquement, sans stockage en clair dans le dépôt.
- extension du coffre DPAPI local à
-
Validation CI alignée sur le besoin métier
- ajout d'une étape GitHub Actions dédiée à la suite Marketstack ;
- échec explicite si
MARKETSTACK_API_KEYest absent ; - exécution du sous-ensemble ciblé (
test:marketstack:ci) pour un contrôle reproductible.
-
Alignement documentaire EN/FR et commandes utilisateur
- activation des cas
tc-pipe-api01ettc-pipe-api02dans les pages pipeline ; - mise à jour du taux fonctionnel à 94 % ;
- consolidation des commandes E2E/API dans le chapitre 3.2.5.
- activation des cas
4. Validation et résultats
Les validations ont confirmé que :
- les scénarios API critiques sont couverts avec des signaux d'erreur clairs ;
- la clé Marketstack n'est pas manipulée en clair dans le flux standard ;
- la documentation reflète l'état réel de la suite de tests.