En tant que praticien du développement logiciel, le débogage d'API est une compétence essentielle, et Postman fait un excellent travail à cet égard. Cependant, dans l'ensemble du processus de développement logiciel, le débogage de l'API n'en est qu'une partie. Il y a encore de nombreuses choses que Postman ne peut pas réaliser ou ne peut pas réaliser efficacement, telles que : la définition du document API, l'API Mock, les tests automatisés de l'API, etc. Apifox est né pour résoudre ce problème.
1. Utilisez Swagger pour gérer la documentation de l'API
2. Utilisez Postman pour déboguer l'API à l'aide de MockJs et d'autres outils
3. Utilisez les données de l'API Mock
4. faire des tests automatisés d'API
Il est très difficile et inefficace de maintenir la cohérence des données entre les différents outils. Et il ne s’agit pas seulement d’un problème de charge de travail, le plus gros problème est l’incohérence des données entre plusieurs systèmes, ce qui entraîne une collaboration inefficace, des problèmes fréquents et un développement et des testeurs misérables.
Une fois que les développeurs ont défini le document dans Swagger, ils doivent accéder à Postman pour le définir à nouveau lors du débogage de l'interface. Lors du développement de données Mock sur le front-end, vous devez les définir à nouveau dans MockJs et vous devez également définir manuellement les règles Mock. Les testeurs doivent accéder à JMeter et le définir à nouveau. Le front-end a été développé sur la base des données de MockJs Mock, et le back-end a été développé sur la base du document d'interface défini par Swagger. Je pensais qu'il pourrait être mis en ligne immédiatement. En conséquence, divers problèmes ont été découverts. lors de la connexion : l'interface a été modifiée pendant le processus de développement, mais MockJs n'a pas été modifié simultanément dans le temps. Les types de données d'interface et les documents développés par le back-end sont incohérents, ce qui rend difficile la détection des problèmes à l'œil nu. De même, les cas de test écrits dans JMeter trouveront également diverses incohérences lors de leur exécution réelle. Au fil du temps, diverses incohérences deviendront de plus en plus graves.
1. Positionnement Apifox
Apifox = Postman + Swagger + Mock + JMeter
Apifox est une documentation API, API de des bugs, API Mock, plateforme de collaboration intégrée de tests automatisés API.
Résolvez le problème de la synchronisation des données entre plusieurs systèmes via un système et une donnée. Tant que le document d'interface est défini, le débogage de l'interface, la simulation de données et les tests d'interface peuvent être utilisés directement sans le définir à nouveau. Une fois le débogage de l'interface terminé, le même outil est utilisé pour le développement et le débogage du document d'interface. garanti d’être totalement cohérent avec la définition du document d’interface. Efficace, ponctuel et précis !
2. Le but d'Apifox
Gagnez chaque minute de l'équipe R&D !
3. Fonction Apifox
Conception de l'interface : bien que les documents d'interface Apifox suivent les spécifications OpenApi 3.0 (anciennement Swagger) et JSON Schema, il fournit également des fonctions de gestion visuelle de documents très faciles à utiliser avec un coût d'apprentissage nul et est très efficace. Et prend en charge le partage de documents d'interface en ligne. Modèle de données : une structure de données réutilisable qui peut être directement référencée lors de la définition de la structure des données de retour de l'interface et de la structure des données des paramètres de requête (uniquement en modes JSON et XML). Prend en charge la référence imbriquée directe des modèles, l'importation intelligente JSON/XML directe et prend en charge les modes de combinaison avancés tels que oneOf et allOf. Débogage de l'interface : Apifox possède des fonctions que Postman possède, telles que les variables d'environnement, les scripts pré/post, le partage global de cookies/session, etc., et est plus efficace et plus facile à utiliser que Postman. Après avoir exécuté l'interface, cliquez sur le bouton Enregistrer comme cas d'utilisation pour générer le cas d'utilisation de l'interface. Vous pouvez exécuter le cas d'utilisation de l'interface directement sans saisir de paramètres, ce qui est très pratique. Les scripts personnalisés sont 100 % compatibles avec la syntaxe Postman et prennent en charge l'exécution de javascript, java, python, php, js, BeanShell, go, shell, ruby, lua et d'autres codes de langue. Cas d'utilisation de l'interface : généralement, une interface aura plusieurs cas d'utilisation, tels que des cas d'utilisation de paramètres corrects, des cas d'utilisation de paramètres incorrects, des cas d'utilisation de données vides, des cas d'utilisation de différents statuts de données, etc. L'exactitude des données sera automatiquement vérifiée lors de l'exécution des cas d'utilisation d'interface. Il est très efficace d'utiliser des cas d'utilisation d'interface pour déboguer les interfaces. Données d'interface simulées : le moteur de règles Mock.js intégré est très pratique pour simuler diverses données, et vous pouvez écrire des règles simulées tout en définissant la structure des données. Prend en charge l'ajout d'"attentes" pour renvoyer différentes données fictives en fonction des paramètres de la demande. La chose la plus importante est qu'Apifox peut simuler des données très conviviales sans configuration, ce qui sera présenté plus loin dans cet article. Fonctionnement de la base de données : prend en charge la lecture des données de la base de données et leur utilisation comme paramètres de requête d'interface. Prend en charge la lecture des données de la base de données pour vérifier (affirmer) si la demande d'interface réussit. Tests automatisés d'interface : fournit des tests de collecte d'interfaces et vous pouvez créer rapidement un ensemble de tests en sélectionnant une interface (ou un cas d'utilisation d'interface). Actuellement, d'autres fonctions de test d'automatisation d'interface sont encore en cours de développement, alors restez à l'écoute ! L’objectif est le suivant : JMeter aura fondamentalement toutes les fonctions et sera plus utilisable. Débogage rapide : Une méthode de débogage d'interface similaire à Postman. Son objectif principal est de déboguer temporairement certaines interfaces qui ne nécessitent pas de documentation. Elle peut être rapidement déboguée sans définir l'interface à l'avance. Génération de code : sur la base de la définition de l'interface et du modèle de données, le système génère automatiquement le code de demande d'interface, le code métier frontal et le code métier back-end. Collaboration en équipe : Apifox est né pour la collaboration en équipe. L'interface est mise à jour de manière synchrone dans le cloud en temps réel, et la gestion mature des droits des équipes/projets/membres répond aux besoins de tous les types d'entreprises.
Si vous pensez qu'Apifox ne fait que l'intégration de données pour améliorer l'efficacité de l'équipe R&D, vous vous trompez. Apifox a également apporté de nombreuses innovations pour améliorer l'efficacité des développeurs.
1. L'interface prend en charge la "gestion des cas d'utilisation"
Habituellement, une interface aura plusieurs cas d'utilisation, tels que des cas d'utilisation corrects, des cas d'utilisation de paramètres incorrects, des cas d'utilisation de données vides et différents cas d'utilisation de statut de données. Définissez ces cas d'utilisation pour différents états lors de la définition de l'interface et exécutez-les directement lors du débogage de l'interface, ce qui est très efficace.
2. Définition et référence du "Modèle de données"
Le modèle de données peut être défini indépendamment. Le modèle de données peut être directement référencé lorsque l'interface est définie, et les modèles de données peuvent également se référencer. La même structure de données ne doit être définie qu'une seule fois et peut être utilisée à plusieurs endroits ; lors de la modification, vous n'avez besoin de modifier qu'un seul endroit, et plusieurs endroits seront mis à jour en temps réel pour éviter les incohérences.
3. "Vérifier automatiquement" la structure des données pendant le débogage
Lors de l'utilisation de l'interface de débogage Apifox, le système vérifiera automatiquement si la structure des données renvoyée est correcte selon la définition dans le document d'interface, sans avoir besoin de visuel. la reconnaissance ou l'écriture manuelle de scripts d'assertion pour la détection est très efficace !
Apifox vérifie automatiquement la structure des données
4. "Visualisation" Définir les assertions
Définir les assertions :
Apifox Définir les assertions
Après l'exécution, affichez les résultats de l'assertion :
5. "Visualisation " Définir les variables d'extraction
6. Prise en charge des opérations de base de données
7. "Zéro configuration" Mock produit des données très conviviales
Tout d'abord, mettons une image pour comparer la simulation sans configuration d'Apifox et d'autres outils similaires Effet des données de sortie :
Résultats des données Apifox Mock comparés à des outils similaires
On peut voir que les données d'Apifox sans configuration Mock sont très proches de la situation réelle. le développement final peut l'utiliser directement sans avoir à écrire manuellement des règles fictives.
Comment Apifox peut générer des données fictives très conviviales avec une efficacité élevée et une configuration nulle
Apifox génère automatiquement des règles fictives basées sur la structure des données et le type de données dans la définition de l'interface. Apifox dispose d'une bibliothèque de règles fictives intelligente intégrée qui optimise intelligemment les règles fictives générées automatiquement en fonction des noms de champs et des types de données de champ. Par exemple : un champ de type chaîne dont le nom contient l'image de chaîne simulera automatiquement une URL d'adresse d'image ; un champ de type chaîne contenant l'heure de chaîne simulera automatiquement une chaîne d'heure ; un champ de type chaîne contenant la ville de chaîne sera automatiquement simulé ; un nom de ville. Sur la base de règles intégrées, Apifox peut identifier automatiquement des champs tels que des images, des avatars, des noms d'utilisateur, des numéros de téléphone mobile, des adresses de sites Web, des dates, des heures, des horodatages, des adresses e-mail, des provinces, des villes, des adresses, des adresses IP, etc., se moquant ainsi des données très conviviales. En plus des règles fictives intégrées, les utilisateurs peuvent également personnaliser la bibliothèque de règles pour répondre à divers besoins personnalisés. Prend en charge l'utilisation d'expressions régulières et de caractères génériques pour faire correspondre les noms de champs avec des règles fictives personnalisées.
8. Générer des documents d'interface en ligne
Le projet Apifox peut « partager » des documents API en ligne. Les documents API partagés peuvent être définis comme publics ou nécessiter un accès par mot de passe, ce qui est très pratique pour la collaboration avec des équipes externes.
Adresse de l'expérience : https://www.apifox.cn/apidoc/shared-ce387612-cfdb-478a-b604-b96d1dbc511b/http/5041285
9. Selon Définition du modèle d'interface, génération automatique de code métier (tel que modèle, contrôleur, code de test unitaire, etc.) et requêtes d'interface dans divers langages/frameworks (tels que TypeScript, Java, Go, Swift, ObjectiveC, Kotlin, Dart, C++, C# , Rust, etc.). Apifox prend actuellement en charge la génération automatique de code pour 130 langages et frameworks.
Ce qui est plus important : vous pouvez utiliser des modèles de code personnalisés pour générer du code conforme aux spécifications architecturales de votre équipe afin de répondre à divers besoins personnalisés.
10. Importer, exporterPrend en charge l'exportation d'OpenApi (Swagger), Markdown, Html et d'autres formats de données. Les données au format OpenApi pouvant être exportées, vous pouvez utiliser les riches outils écologiques d'OpenApi (Swagger) pour compléter diverses interfaces. -les tâches liées sont importantes. Prend en charge l'importation d'OpenApi (Swagger), Postman, apiDoc, HAR, RAML, RAP2, YApi, Elinker, NEI, DOClever, ApiPost, Apizza, ShowDoc, API Blueprint, I/O Docs, WADL, Google Discovery et d'autres formats de données pour faciliter les anciens les projets migrent. Prend en charge l'importation automatique planifiée des données au format OpenApi (Swagger), apiDoc et Apifox.
3. Planification des fonctions de suivi
4. Plus de captures d'écran de la fonction Apifox
Règles simulées personnalisées
Mockage intelligent
Automatisation de l'interfaceImportation de projet
Export de projet
Multiple thèmes au choix
5. Adresse de téléchargement Apifox