3 - Création de cas de tests automatisés
Utilisation de l'IA pour générer des cas de tests automatisés à partir d'une spécification openAPI, en suivant une approche structurée et rigoureuse.
Agent GenTestAuto
# Objectif de l’application
Créer une application web agentique permettant de tester automatiquement une API à partir d’une spécification OpenAPI (Swagger JSON), en générant, exécutant et analysant des scénarios de test.
# Entrées de l’application
L’utilisateur fournit :
* Un fichier Swagger/OpenAPI au format JSON
* L’URL de base de l’API à tester (ex : https://api.example.com)
# Fonctionnalités attendues
## Analyse du Swagger
* Parser la spécification OpenAPI
* Extraire :
* Endpoints
* Méthodes HTTP
* Paramètres
* Schémas de requêtes et réponses
* Codes de réponse
## Génération de tests
Générer des cas de test structurés et modifiables couvrant
* Tous les endpoints disponibles
* Tous les codes de réponses documentés
* Trois types de scénarios :
* Cas nonimal (requête valide)
* Cas d’erreur (données invalides, paramètres manquants)
* Cas limites (valeurs extrêmes, champs optionnels)
Chaque test doit inclure :
* Nom et description du test
* Endpoint + méthode HTTP
* Requête complète
* Résultat attendu
## Exécution des tests
* Exécuter les requêtes HTTP vers l’API cible
* Comparer la réponse réelle avec l’attendu
## Visualisation des résultats
Afficher les résultats de manière claire :
* Résumé global
* Détail par test
## Génération d’un rapport de test téléchargeable
Générer un rapport téléchargeable
# Interface utilisateur
Créer une interface simple et moderne, en français, permettant de :
* Charger le swagger
* Renseigner l’URL de l’API
* Générer et afficher les tests
* Par endpoint
* En totalité
* Exécuter les tests et afficher les résultats
* Unitairement
* Par endpoint
* En totalité
* Télécharger le rapport
Agent TestAutoKarate
# Objectif de l’application
Créer une application web agentique permettant de tester automatiquement une API à partir d’une spécification OpenAPI (Swagger JSON), en générant, exécutant et analysant des scénarios de test développés pour le framework Karate.
# Entrées de l’application
L’utilisateur fournit :
* Un fichier Swagger/OpenAPI au format JSON
* L’URL de base de l’API à tester (ex : https://api.example.com)
# Fonctionnalités attendues
## Analyse du Swagger
* Parser la spécification Swagger/OpenAPI
* Extraire et analyser :
* tous les endpoints de l'API
* toutes les méthodes HTTP
* tous les paramètres
* tous les schémas de requêtes et réponses
* tous les codes de réponse
## Génération de tests
Générer des cas de test, pour le framework Karate, structurés et modifiables couvrant
* Tous les endpoints
* Tous les codes de réponses documentés
Trois types de scénarios doivent être générés
* Cas nonimal (requête valide)
* Cas d’erreur (données invalides, paramètres manquants)
* Cas limites (valeurs extrêmes, champs optionnels)
Chaque test doit inclure :
* Nom et description du test
* Endpoint + méthode HTTP testé
* Requête complète
* Résultat attendu
## Génération du projet Maven
Générer la structure du projet Maven comprenant tous les tests Karate générés
## Exécution des tests
* Exécuter tous les tests Karate générés (toutes les requêtes vers l'API cible)
* Comparer le résultat du test exécuté avec le résultat attendu
## Visualisation des résultats
Afficher les résultats de manière claire :
* Résumé global
* Détail par test
## Génération d’un rapport de test téléchargeable
Générer un rapport au format HTML téléchargeable
Rapport global
Rapport par endpoint
# Interface utilisateur
Créer une interface simple et moderne, en français, permettant de :
* Charger le swagger
* Renseigner l’URL de l’API
* Générer et afficher les tests pour le framework Karate
* Par endpoint
* En totalité
* Exécuter les tests et afficher les résultats
* Unitairement
* Par endpoint
* En totalité
* Télécharger le rapport
# Utiliser :
- Java 20+
- Maven
- Framework Karate
# Frontend
Le frontend doit contenir :
- le téléchargement du fichier swagger/OpenAPI
- un viewer de génération des tests
- un dashboard d'exécution des tests
- un viewer de rapports de tests
# Backend
Le backend doit contenir :
- l'API Gemini
- un runner maven
Analyse statique du swagger
Fait une analyse statique du swagger et remonte les erreurs et incohérences. Génère un rapport PDF avec le résultat de ton analyse.
Consolidation des étapes précèdentes
....