خدمة WireMock
wdio-wiremock-service هي حزمة طرف ثالث، لمزيد من المعلومات يرجى مراجعة GitHub | npm
تساعدك هذه الخدمة على تشغيل WireMock بسلاسة عند تشغيل الاختبارات مع WebdriverIO. تستخدم مستودع Maven المعروف لتنزيل ملف WireMock jar لك، والذي يتم تثبيته وتشغيله وإيقافه تلقائياً. ابق على اطلاع بالانضمام إلى المجتمع على Gitter للحصول على المساعدة والدعم.
التثبيت
npm i -D wdio-wiremock-service
يمكن العثور على تعليمات حول كيفية تثبيت WebdriverIO
هنا.
الاستخدام
في الدليل الجذر (الافتراضي ./mock
) ستجد دليلين فرعيين، __files
و mappings
والتي تستخدم للتجهيزات والمحاكاة الخاصة بك.
لمزيد من المعلومات، راجع وثائق WireMock الرسمية.
التكوين
لاستخدام الخدمة مع wdio testrunner، تحتاج إلى إضافتها إلى مصفوفة الخدمات الخاصة بك:
// wdio.conf.js
export.config = {
// ...
services: ['wiremock'],
// ...
};
عند استخدام webdriverio standalone، تحتاج إلى إضافة الخدمة وتشغيل خطافات onPrepare
و onComplete
يدوياً. يمكن العثور على مثال هنا (يستخدم المثال Jest):
الخيارات
يمكن إضافة الخيارات التالية إلى الخدمة.
port
المنفذ الذي يجب أن يعمل عليه WireMock.
النوع: Number
القيمة الافتراضية: 8080
مثال:
// wdio.conf.js
export const config = {
// ...
services: [['wiremock', { port: 8181 }]],
// ...
};
rootDir
المسار الذي سيبحث فيه WireMock عن الملفات.
النوع: String
القيمة الافتراضية: ./mock
مثال:
// wdio.conf.js
export const config = {
// ...
services: [['wiremock', { rootDir: './mock' }]],
// ...
};
version
إصدار WireMock الذي سيتم تنزيله واستخدامه.
النوع: String
القيمة الافتراضية: 3.3.1
مثال:
// wdio.conf.js
export const config = {
// ...
services: [['wiremock', { version: '2.25.1' }]],
// ...
};
skipWiremockInstall
أخبر الخدمة بتخطي تنزيل WireMock.
النوع: Boolean
القيمة الافتراضية: false
مثال:
// wdio.conf.js
export const config = {
// ...
services: [['wiremock', { skipWiremockInstall: true }]],
// ...
};
binPath
مسار مخصص لملف Wiremock الثنائي المحلي (غالباً ما يستخدم مع skipWiremockInstall).
النوع: String
القيمة الافتراضية: './wiremock-standalone-3.0.0.jar' (نسبي من الخدمة)
مثال:
// wdio.conf.js
export const config = {
// ...
services: [['wiremock', { binPath: './my-custom/example-path/wiremock-standalone-3.0.0.jar' }]],
// ...
};