Des API SAP pour vos tests, sans vous battre avec l'authentification SAP.
SAP BAH Sandbox tourne sur votre propre machine. Importez la spécification d'une API du Business Accelerator Hub et vous obtenez un mock qui répond comme le vrai service, OData compris : il suffit d'y pointer votre produit ou votre iFlow. Elle surveille aussi le catalogue du Hub et vous prévient quand une API ou un artefact publie une nouvelle version.
Pas de Docker, aucun identifiant SAP nécessaire · licence MIT · se met à jour toute seule
Tout ce qu'il faut pour tester avec les API SAP
Un petit serveur avec un seul fichier SQLite : mocks, suivi des changements, tests et journal du trafic.
Des mocks qui répondent comme SAP
Importez une spécification OpenAPI 3, Swagger 2 ou OData EDMX et montez-la. Collections, prédicats de clé, $filter, $select, $orderby, $top, $skip et la bonne enveloppe V2 ou V4 — avec des données issues d'un générateur, de vos propres fixtures, d'une IA locale ou d'un vrai backend via un proxy.
Sachez quand une API change
Elle parcourt le catalogue du Hub — environ 1 950 packages et 42 000 artefacts, sans connexion — conserve chaque version et rédige un rapport de ce qui est nouveau, modifié ou supprimé, en signalant les changements incompatibles. En HTML, JSON et CSV.
Une suite de tests écrite pour vous
Un test par opération, rempli à partir de la spécification, qui vérifie le code de statut et valide la réponse par rapport à son schéma. Un mode lecture seule pour les vrais tenants, et un code de sortie pour votre pipeline.
Voyez exactement ce que votre iFlow a envoyé
Chaque appel à un mock est enregistré avec les en-têtes, les corps et les temps, et affiché en direct comme dans les outils de développement du navigateur — JSON malformé compris, octet par octet.
Les cas qui tournent mal aussi
Ajoutez à n'importe quel mock de la latence et un taux d'erreur, et testez les branches de nouvelle tentative et d'exception de votre intégration, pas seulement le cas où tout se passe bien.
S'installe et se met à jour toute seule
Une seule commande l'installe avec son propre runtime Node privé et la lance à l'ouverture de session. Les nouvelles versions s'installent d'elles-mêmes quand la sandbox est inactive ; vos données et vos paramètres sont conservés.
Opérationnelle en cinq minutes
Rien à installer côté SAP, et aucun compte à créer.
- Installez-laDécompressez la dernière version et lancez l'installateur de votre système. Il télécharge son propre runtime Node, génère une clé d'administration et démarre la sandbox.
- Importez une spécification et montez-laTéléchargez une spécification sur api.sap.com, ou enregistrez le
$metadatad'un tenant, importez-la dans l'onglet Mocks et cliquez sur mount. Le mock est aussitôt disponible sur/mock/<slug>. - Pointez-y votre produit ou votre iFlowAppelez
http://<host>:8080/mock/<slug>. Pour un tenant Integration Suite sur Cloud Foundry, le dépôt explique comment l'atteindre via Cloud Connector, un tunnel ou nginx.
En ligne de commande
# Windows (PowerShell), inside the unpacked release powershell -ExecutionPolicy Bypass -File .\install\install.ps1 # macOS / Linux ./install/install.sh # then sapbah open # the UI in your browser sapbah sync --filter SuccessFactors # what changed on the Hub sapbah test --mock s4-bp --read-only # run the generated suite sapbah update --check # is there a new release?
L'installateur configure le démarrage automatique : Planificateur de tâches sous Windows, launchd sous macOS, systemd sous Linux. Il existe aussi une installation système pour un serveur partagé par l'équipe.
Vos données restent sur votre machine
Une sandbox qui voit le trafic de vos intégrations doit le traiter avec soin.
Locale par conception
Spécifications, jeux de données et journal du trafic sont stockés dans un seul fichier SQLite sur votre machine. Rien ne sort, sauf si vous configurez un mock proxy.
Une API d'administration verrouillée
L'installateur génère une clé d'administration. Les requêtes qu'un autre site web tente d'envoyer depuis votre navigateur sont refusées, et les réponses des mocks ne peuvent jamais exécuter de code dans la page d'administration.
Les secrets restent hors du journal
Les en-têtes Authorization, Cookie et de clé d'API sont masqués avant tout enregistrement. Les identifiants du Hub sont facultatifs : le catalogue est public.
Aucune télémétrie
La seule requête sortante qu'elle fait d'elle-même est une vérification anonyme de nouvelle version sur GitHub, et un paramètre suffit à la désactiver.
Gratuite et open source, et ça le restera
SAP BAH Sandbox est publiée sous licence MIT : utilisez-la au travail, modifiez-la, partagez-la. Si elle vous a fait gagner un après-midi, un petit don aide à la maintenir.
Questions
Faut-il des identifiants SAP ?
Non. Le suivi du catalogue utilise le catalogue public du Hub, et les mocks fonctionnent avec n'importe quelle spécification que vous importez. Seul le téléchargement automatique des spécifications nécessite une clé d'API du Hub ou une session connectée.
SAP Integration Suite peut-elle appeler les mocks ?
Oui. Un tenant Cloud Foundry ne peut pas atteindre une adresse privée : utilisez donc SAP Cloud Connector, un Cloudflare Tunnel ou nginx — le dépôt fournit une configuration fonctionnelle pour chacun.
Quelles spécifications sont prises en charge ?
OpenAPI 3, Swagger 2 et OData EDMX, y compris un document $metadata enregistré depuis un tenant. Le moteur OData couvre les options de requête que les intégrations envoient réellement.
Comment fonctionne la mise à jour automatique ?
Toutes les six heures, la sandbox demande à GitHub la dernière version publiée. S'il en existe une plus récente, elle l'installe dès qu'elle est restée inactive pendant 15 minutes, en conservant vos données et vos paramètres. Vous pouvez aussi cliquer sur Update now, ou désactiver la mise à jour avec AUTO_UPDATE=false.
Est-ce que ça fonctionne sous macOS et Linux ?
Oui. Le même installateur couvre les deux et enregistre un agent launchd ou un service utilisateur systemd. Pour un serveur utilisé par toute l'équipe, il existe une installation systemd au niveau du système.
Est-ce un produit SAP ?
Non. C'est un projet open source indépendant, non affilié à SAP. Il lit uniquement le catalogue public du Hub et les spécifications que vous lui fournissez.