En bref
La migration de ReadyAPI vers Apidog est directe pour les suites de tests REST. Exportez votre projet ReadyAPI, importez les API via une spécification OpenAPI, puis recréez les scripts Groovy en JavaScript. Les cas de test SOAP demandent plus de travail manuel. Privilégiez une migration progressive pour garantir la continuité des tests.
Essayez Apidog dès aujourd'hui
💡 Apidog est une plateforme de développement API tout-en-un gratuite qui importe les spécifications OpenAPI et les collections Postman, et exécute des pipelines de test avec des scripts JavaScript. Essayez Apidog gratuitement, aucune carte de crédit requise.
Introduction
Migrer une infrastructure de test API n’est jamais trivial. Les projets ReadyAPI accumulent souvent des années de cas de test, scripts Groovy personnalisés, fichiers de données et structures complexes. Pour une migration efficace vers Apidog, il est essentiel de distinguer ce qui peut être importé automatiquement, ce qui doit être migré manuellement, et ce qui peut être laissé de côté.
Ce guide détaille chaque étape de la migration : export du projet ReadyAPI, analyse de son contenu, import dans Apidog, conversion Groovy → JavaScript, configuration CI/CD, gestion de la période de transition avec exécution parallèle des deux outils.
Étape 1 : Auditez votre projet ReadyAPI
Commencez par inventorier votre projet ReadyAPI. Cet audit oriente la charge de migration.
Questions à traiter :
- Nombre de suites, cas de test et étapes de test ? Utilisez le panneau Navigateur pour compter.
- Répartition REST vs SOAP ? Les tests REST migrent facilement, les SOAP nécessitent plus de travaux manuels, surtout avec WS-Security.
- Quantité de scripts Groovy ? Parcourez tous les cas de test, notez ceux qui incluent des scripts personnalisés.
- Tests basés sur des données (DataSource) ? Apidog gère CSV/JSON, mais la configuration diffère du modèle ReadyAPI.
- Usage des étapes Propriétés/Transfert de Propriétés ? Prévoyez de les convertir en variables/environnements Apidog.
- Tests de charge via LoadUI Pro ? Cette intégration n’est pas transférable ; prévoyez k6 ou un autre outil pour la charge.
Consignez vos résultats dans un tableau (nom, type, présence de Groovy, complexité). Cela fournit une estimation et facilite la planification.
Étape 2 : Exportez votre projet ReadyAPI
Pour un export complet :
- Ouvrez ReadyAPI et votre projet.
- Fichier > Enregistrer sous → exportez le projet sous forme de fichier XML.
- Sauvegardez tous les fichiers de données externes (CSV, Excel, XML).
- Notez vos environnements dans la section dédiée.
Le XML exporté regroupe toutes les suites de tests, étapes, scripts et configurations.
Étape 3 : Extrayez vos définitions d’API
Pour les API REST, privilégiez l’import via OpenAPI :
- Option A : Export ReadyAPI Clic droit sur le service REST > Exporter la spécification (Swagger/OpenAPI).
-
Option B : Utilisez la spec backend
Téléchargez directement
/openapi.jsonsi disponible. - Option C : Extraction manuelle Listez les endpoints, corps de requête, en-têtes et réponses à partir des requêtes REST existantes. Vous les recréerez manuellement dans Apidog.
Étape 4 : Importez dans Apidog
Une fois la spec OpenAPI prête :
- Créez un projet dans Apidog.
- Allez dans API > Importer et sélectionnez le format (OpenAPI 3.0, Swagger 2.0…).
- Uploadez le fichier ou collez l’URL.
- Apidog génère automatiquement la structure des endpoints, paramètres, schémas de requête/réponse.
Astuce : Apidog permet aussi d’importer des collections Postman (Fichier > Importer > Postman).
Étape 5 : Recréez les cas de test REST
Pour chaque cas de test REST :
- Ouvrez le cas ReadyAPI, identifiez requêtes, assertions, sources de données.
- Dans Apidog, créez le test correspondant à partir du bon endpoint.
- Ajoutez les étapes de test, assertions et jeux de données.
Exemples d’assertions :
- Assertion “contient” :
pm.test('contient la valeur', () => {
pm.expect(pm.response.text()).to.include('chaîne attendue');
});
- Assertion statut HTTP :
pm.test('statut 200', () => {
pm.response.to.have.status(200);
});
- Assertion JSONPath :
pm.test('valeur de champ', () => {
pm.expect(pm.response.json().nomDeChamp).to.equal('attendu');
});
Les tests GET/POST sans Groovy se recréent rapidement. Un cas simple (5-10 assertions) se migre en 15-30 minutes.
Étape 6 : Convertissez les scripts Groovy en JavaScript
La migration des scripts personnalisés est la partie la plus technique.
Correspondances courantes :
- Lecture d’une valeur de réponse :
// Groovy (ReadyAPI)
def response = context.expand('${TestStep#Response}')
def json = new groovy.json.JsonSlurper().parseText(response)
def value = json.fieldName
// JavaScript (Apidog)
const response = pm.response.json();
const value = response.fieldName;
- Définir une variable :
testRunner.testCase.setPropertyValue('myVariable', someValue)
pm.variables.set('myVariable', someValue);
- Assertion conditionnelle :
if (statusCode == 200) {
assert responseBody.contains("success")
}
if (pm.response.code === 200) {
pm.test('la réponse contient succès', () => {
pm.expect(pm.response.text()).to.include('success');
});
}
- Manipulation de date :
def now = new Date()
def formatted = now.format('yyyy-MM-dd')
const now = new Date();
const formatted = now.toISOString().split('T')[0];
Pour chaque script complexe, analysez la logique puis réécrivez-la soigneusement en JavaScript. Évitez la traduction automatique : la proximité syntaxique Groovy/JS peut masquer des différences subtiles et générer des bugs.
Étape 7 : Gérez les cas de test SOAP
Les tests SOAP demandent une approche spécifique :
- Si une interface REST existe, privilégiez la migration vers REST.
- Sinon, vous pouvez :
- Garder ReadyAPI uniquement pour SOAP (exécution en parallèle pour SOAP, Apidog pour REST)
- Utiliser SoapUI Open Source pour les tests fonctionnels SOAP basiques.
Les cas WS-Security sont à traiter avec précaution : analysez chaque assertion, migrez-les avec soin.
Étape 8 : Configurez les environnements et les variables
Pour chaque environnement ReadyAPI :
- Créez l’environnement équivalent dans Apidog (Paramètres > Environnements).
- Ajoutez les variables nécessaires (URL base, jetons, en-têtes…).
- Référencez-les dans vos tests via
{{nomDeVariable}}.
Étape 9 : Configurez l’intégration continue/déploiement continu (CI/CD)
Contrairement à ReadyAPI (commande testrunner), Apidog propose une CLI nodejs.
Installation :
npm install -g apidog-cli
Exécution d’une collection de tests :
apidog run "chemin/vers/collection.json" -e "id-environnement"
Exemple GitHub Actions :
- name: Exécuter les tests API
run: apidog run collection.json --environment staging
Exemple Jenkins : ajoutez une étape shell qui lance la CLI Apidog.
Mettez à jour vos scripts CI pour remplacer les appels ReadyAPI par ceux d’Apidog une fois validés.
Étape 10 : Exécutez les deux outils en parallèle
Ne basculez pas tout en une journée. Pendant la transition :
- Continuez à exécuter ReadyAPI comme référence dans la CI.
- Exécutez les tests Apidog en parallèle, comparez les résultats.
- Corrigez les écarts, migrez les nouveaux tests uniquement sur Apidog.
- Lorsque les résultats sont cohérents, retirez ReadyAPI de la CI mais gardez-le accessible quelques mois si besoin.
FAQ
Combien de temps prend la migration ReadyAPI vers Apidog ?
Un projet REST sans script complexe migre en 1 à 3 jours. Un gros projet avec beaucoup de Groovy, des tests SOAP, etc. prend 2 à 6 semaines. L’audit initial est clé pour estimer.
Les fichiers de données ReadyAPI sont-ils compatibles ?
CSV : oui. Excel : convertir en CSV. XML : à adapter selon l’usage.
Puis-je exécuter ReadyAPI et Apidog dans le même pipeline CI ?
Oui, recommandé. Ajoutez l’étape Apidog CLI, comparez les résultats.
Faut-il recréer les environnements manuellement ?
Oui, il n’existe pas d’import automatique. Ouvrez les environnements ReadyAPI en parallèle pour la configuration.
Que faire des tests ReadyAPI sans équivalent REST ?
Maintenez ReadyAPI (avec moins de licences si possible), migrez sur SoapUI Open Source, ou acceptez une lacune si la couverture n’est plus critique.
Apidog couvre-t-il les mêmes assertions que ReadyAPI ?
Les assertions JavaScript couvrent l’essentiel des besoins REST. Les assertions spécifiques SOAP/WS-Security n’ont pas d’équivalent direct.
La migration ReadyAPI vers Apidog est un projet structurant. En auditant d’abord, migrant les REST en priorité et en exécutant les deux outils en parallèle, vous évitez toute perte de couverture ou régression.
Top comments (0)