مراسل Slack Reporter
wdio-slack-reporter هي حزمة تابعة لجهة خارجية، لمزيد من المعلومات يرجى الاطلاع على GitHub | npm
مراسل من WebdriverIO باستخدام Incoming webhook و Web API لإرسال النتائج إلى Slack.
📢 إشعار هام
الترحيل إلى filesUploadV2 بسبب files.upload deprecation
لقطة شاشة إشعار Slack

سياسة دعم إصدار WebdriverIO
إصدارات WebdriverIO المدعومة في هذا المش روع تتبع سياسة دعم WebdriverIO. يمكن التحقق من سياسة دعم WebdriverIO هنا.
التثبيت
الطريقة الأسهل هي الاحتفاظ بـ @moroo/wdio-slack-reporter
كتبعية تطوير في ملف package.json
الخاص بك.
{
"devDependencies": {
"@moroo/wdio-slack-reporter": "^9.0.0"
}
}
يمكنك القيام بذلك ببساطة عن طريق:
- NPM
npm install @moroo/wdio-slack-reporter --save-dev
- Yarn
yarn add -D @moroo/wdio-slack-reporter
يمكن العثور على تعليمات كيفية تثبيت WebdriverIO
هنا.
التكوين
لاستخدام المراسل، تحتاج إلى إضافة slack إلى مصفوفة المراسلين في wdio.conf.js
// wdio.conf.js
import SlackReporter from '@moroo/wdio-slack-reporter';
export const config: WebdriverIO.Config = {
reporters: [
[
SlackReporter,
{
slackOptions: {
type: 'web-api',
channel: process.env.SLACK_CHANNEL || 'Cxxxxxxxxxx',
token: process.env.SLACK_BOT_TOKEN || 'xoxb-xxxxxxxxxx-xxxxxx...',
},
},
],
],
};
خيارات التكوين
يتم دعم خيارات التكوين التالية.
لإرسال الإشعارات، يجب عليك تعيين webhook
أو web-api
.
إذا تم تعيين كل من web-api
و webhook
، يتم استخدام web-api
.
Webhook (Incoming Webhook)
webhook (مطلوب
)
Incoming Webhook لقناة slack التي يجب إرسال الإشعارات إليها. إذا لم يتم تكوين عنوان URL، لن يتم إرسال الإشعارات.
- النطاق:
webhook
- النوع:
string
username (اختياري
)
ستظهر قيمة اسم المستخدم في إشعار slack كمستخدم أرسله.
- النطاق:
webhook
- النوع:
string
- الافتراضي:
"WebdriverIO Reporter"
icon_url (اختياري
)
عنوان URL للأيقونة المراد عرضها في slack
- النطاق:
webhook
- النوع:
string
- الافتراضي:
"https://webdriver.io/img/webdriverio.png"
[!TIP] بجانب هذه، يمكن أيضًا استخدام جميع الخيارات المحددة في مواصفات Slack Incoming Webhook.
Web API (Slack Bot)
token (مطلوب
)
Web API لقناة slack التي يجب إرسال الإشعارات إليها. رمز مستخدم بوت مطلوب. رموز وصول البوت تبدأ دائمًا بـ xoxb
.
يتطلب رمز البوت نطاق OAuth chat:write
، files:write
.
انظر أدناه لمزيد من التفاصيل.
- النطاق:
web-api
- النوع:
string
channel (مطلوب
)
القناة، المجموعة الخاصة، أو قناة IM لإرسال الرسالة إليها. يمكن أن تكون معرف مشفر، أو اسم. انظر أدناه لمزيد من التفاصيل.
"كيفية العثور على معرف القناة" - stackoverflow -
- النطاق:
web-api
- النوع:
string
[!TIP] بجانب هذه، يمكن أيضًا استخدام جميع الخيارات المحددة في مواصفات Slack Web API.
uploadScreenshotOfFailedCase (اختياري
)
قم بتعيين هذا الخيار إلى true لإرفاق لقطة شاشة بالحالة الفاشلة.
- النطاق:
web-api
- النوع:
boolean
- الافتراضي:
true
notifyDetailResultThread (اختياري
)
يعمل هذا الخيار فقط عندما يكون خيار notifyTestFinishMessage صحيحًا.
قم بتعيين هذا الخيار إلى true إذا كنت ترغب في إضافة سلسلة مع تفاصيل النتائج إلى إشعار بنتائج الاختبار المنشورة على Slack.
- النطاق:
web-api
- النوع:
boolean
- الافتراضي:
true
filterForDetailResults (اختياري
)
يعمل هذا الخيار فقط عندما يكون خيار notifyDetailResultThread صحيحًا.
أضف المرشح الذي تريده إلى هذا الخيار في المصفوفة وسيتم تصفية النتائج المفصلة في Slack وإرسالها إلى السلسلة.
(إذا لم تكن هناك مرشحات (المصفوفة فارغة أو غير محددة)، يتم تطبيق جميع المرشحات.)
قائمة المرشحات: passed
، failed
، pending
، skipped
- النطاق:
web-api
- النوع:
array (passed | failed | pending | skipped)
- الافتراضي:
['passed', 'failed', 'pending', 'skipped']
createScreenshotPayload (اختياري
)
يخصص هذا الخيار الحمولة التي يتم تحميلها من لقطة الشاشة لفشل الاختبار.
- النطاق:
web-api
- النوع:
function
createResultDetailPayload (اختياري
)
يخصص هذا الخيار الحمولة التي يتم إشعارها من النتائج المفصلة للاختبار.
- النطاق:
web-api
- النوع:
function
المشترك
title (اختياري
)
قم بتعيين هذا الخيار إلى عنوان الاختبار.
- النطاق:
webhook
،web-api
- النوع:
string
resultsUrl (اختياري
)
قدم رابطًا لنتائج الاختبار. إنه رابط قابل للنقر في الإشعار.
- النطاق:
webhook
،web-api
- النوع:
string