API SAP для тестів — без боротьби з автентифікацією SAP.
SAP BAH Sandbox працює на вашому комп’ютері. Імпортуйте специфікацію API з Business Accelerator Hub — і отримаєте mock, який відповідає як справжній сервіс, зокрема OData: спрямуйте на нього свій продукт або iFlow. Крім того, програма стежить за каталогом Hub і повідомляє, коли API чи артефакт публікує нову версію.
Без Docker, облікові дані SAP не потрібні · ліцензія MIT · оновлюється сама
Усе, що потрібно для тестування з API SAP
Один невеликий сервер і один файл SQLite: mock, відстеження змін, тести й журнал трафіку.
Mock, які відповідають як SAP
Імпортуйте специфікацію OpenAPI 3, Swagger 2 або OData EDMX і виконайте mount. Колекції, предикати ключа, $filter, $select, $orderby, $top, $skip і правильна обгортка V2 або V4 — з даними з генератора, ваших фікстур, локального ШІ або реального бекенду через проксі.
Дізнавайтеся, коли API змінюється
Програма обходить каталог Hub — близько 1 950 пакетів і 42 000 артефактів, без входу в систему, — зберігає кожну версію та складає звіт про те, що з’явилося, змінилося або вилучено, з позначкою несумісних змін. HTML, JSON і CSV.
Набір тестів, написаний за вас
По тесту на кожну операцію, заповненому за специфікацією: він перевіряє код стану й валідує відповідь за її схемою. Режим лише читання для справжніх tenant і код повернення для вашого пайплайна.
Дивіться, що саме надіслав ваш iFlow
Кожен виклик mock записується із заголовками, тілами й часом виконання та показується в реальному часі, як в інструментах розробника браузера, — зокрема некоректний JSON, байт у байт.
І невдалі сценарії теж
Задайте будь-якому mock додаткову затримку й частку помилок і перевірте гілки повторних спроб та обробки винятків у вашій інтеграції, а не лише вдалий сценарій.
Сама встановлюється й оновлюється
Одна команда встановлює програму разом із власним середовищем виконання Node і запускає її під час входу в систему. Нові релізи встановлюються самі, коли пісочниця простоює; ваші дані й налаштування зберігаються.
Запуск за п’ять хвилин
Нічого не потрібно встановлювати на боці SAP і не потрібно створювати обліковий запис.
- ВстановітьРозпакуйте останній реліз і запустіть інсталятор для вашої системи. Він завантажить власне середовище виконання Node, згенерує ключ адміністратора й запустить пісочницю.
- Імпортуйте специфікацію й виконайте mountЗавантажте специфікацію з api.sap.com або збережіть
$metadatatenant, імпортуйте її на вкладці Mocks і натисніть mount. Вона одразу доступна за адресою/mock/<slug>. - Спрямуйте на неї свій продукт або iFlowВикликайте
http://<host>:8080/mock/<slug>. Для tenant Integration Suite у Cloud Foundry в репозиторії описано, як підключитися через Cloud Connector, тунель або nginx.
З командного рядка
# 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?
Інсталятор налаштовує автозапуск: Планувальник завдань у Windows, launchd у macOS, systemd у Linux. Є також загальносистемне встановлення для спільного сервера команди.
Ваші дані залишаються на вашому комп’ютері
Пісочниця, яка бачить трафік ваших інтеграцій, має поводитися з ним дбайливо.
Локально за задумом
Специфікації, набори даних і журнал трафіку зберігаються в одному файлі SQLite на вашому комп’ютері. Нічого нікуди не надсилається, якщо ви не налаштуєте mock із проксі.
Захищений API адміністрування
Інсталятор генерує ключ адміністратора. Запити, які інший сайт намагається надіслати з вашого браузера, відхиляються, а відповіді mock ніколи не можуть виконати код на сторінці адміністрування.
Секрети не потрапляють у журнал
Заголовки Authorization, Cookie та API key приховуються до того, як будь-що буде збережено. Облікові дані Hub необов’язкові: каталог публічний.
Без телеметрії
Єдиний вихідний запит із власної ініціативи — анонімна перевірка нового релізу на GitHub, і його вимикає одне налаштування.
Безкоштовно й з відкритим кодом — і так залишиться
SAP BAH Sandbox поширюється за ліцензією MIT: використовуйте на роботі, змінюйте, діліться. Якщо програма заощадила вам пів дня, невелика пожертва допоможе її підтримувати.
Запитання
Чи потрібні облікові дані SAP?
Ні. Відстеження каталогу використовує публічний каталог Hub, а mock працюють із будь-якою імпортованою специфікацією. Лише для автоматичного завантаження специфікацій потрібен API key Hub або сеанс із виконаним входом.
Чи може SAP Integration Suite викликати mock?
Так. Tenant у Cloud Foundry не може звернутися до приватної адреси, тому використовуйте SAP Cloud Connector, Cloudflare Tunnel або nginx — у репозиторії є робоча конфігурація для кожного варіанта.
Які специфікації підтримуються?
OpenAPI 3, Swagger 2 і OData EDMX, зокрема документ $metadata, збережений із tenant. Рушій OData підтримує ті параметри запиту, які інтеграції справді надсилають.
Як працює автоматичне оновлення?
Кожні шість годин пісочниця запитує в GitHub останній реліз. Якщо є новіший, вона встановлює його, щойно простоїть без діла 15 хвилин, зберігаючи ваші дані й налаштування. Можна також натиснути Update now або вимкнути оновлення за допомогою AUTO_UPDATE=false.
Чи працює програма в macOS і Linux?
Так. Той самий інсталятор підходить для обох систем і реєструє агент launchd або користувацьку службу systemd. Для сервера, яким користується вся команда, є загальносистемне встановлення systemd.
Це продукт SAP?
Ні. Це незалежний проєкт із відкритим кодом, не пов’язаний із SAP. Він читає лише публічний каталог Hub і специфікації, які ви йому надаєте.