گزارشگر خط زمانی
wdio-timeline-reporter یک پکیج شخص ثالث است، برای اطلاعات بیشتر لطفا به GitHub | npm مراجعه کنید
یک گزارشگر همهکاره WebdriverIO برای تجسم تجمیعی نتایج آزمونهای شما زیرا "دیدن باور کردن است"
چرا
زیرا ما زمان زیادی را صرف اشکالزدایی آزمونهای ناموفق میکنیم و از خروجی ترمینال به مشاهده تصاویر خطا و غیره میپردازیم. این گزارشگر تمام اطلاعات معمولی که نیاز خواهید داشت را در یک گزارش جمعآوری میکند. آزمونها را اجرا کنید و یک خط زمانی زیبا از رویدادها داشته باشید که میتوانید به آن نگاه کنید تا بیشتر تأیید کنید همه چیز خوب به نظر میرسد.
ویژگیها شامل:
- با چارچوبهای Mocha و Jasmine عالی کار میکند. همچنین با Cucumber کار میکند اما هر مرحله به عنوان یک آزمون گزارش میشود
- خلاصه واضح نتایج آزمون.
- جزئیات هر اجرای آزمون، از جمله تمام تصاویر گرفته شده در طول اجرای آزمون.
- فیلتر کردن نتایج آزمون. عالی برای تمرکز بر آزمونهای ناموفق
- ردیابی پشته خطا به آزمون متصل شده است.
- توانایی افزودن اطلاعات اضافی به آزمون در زمان اجرا.
- نیازی به پردازش پس از اتمام نیست. پس از اتمام فرآیند آزمون wdio، یک فایل گزارش html استاتیک ایجاد میشود.
- سرویس خط زمانی برای مدیریت گرفتن تصاویر شامل تغییر اندازه تصاویر.
یک نمونه گزارش html را میتوان اینجا پیدا کرد
دستورالعملهای نحوه نصب WebdriverIO
را میتوان اینجا یافت.
نصب
برای نسخه سازگار با WEBDRIVERIO V4 به اینجا مراجعه کنید
npm install --save wdio-timeline-reporter
یک وابستگی به package.json
شما اضافه خواهد شد
{
"dependencies": {
"wdio-timeline-reporter": "^5.1.0"
}
}
استفاده
timeline
را به آرایه گزارشگران در فایل پیکربندی wdio خود اضافه کنید.
همچنین TimelineService
را از wdio-timeline-reporter وارد و اضافه کنید.
سرویس برای ترکیب گزارشها و ایجاد html ضروری است زیرا گزارشگرها اکنون به ازای هر نمونه اجرا در webdriverio 5 راهاندازی میشوند. بحث باز در مورد webdriverio را ببینید
TimelineService همچنین میتواند گرفتن تصاویر را در طول اجرای آزمونها مدیریت کند. شما گزینه کاهش اندازه و کیفیت تصاویر و همچنین جاسازی تصاویر در گزارش به عنوان base64 را دارید. اینها با استفاده از گزینههای گزارشگر قابل تنظیم هستند.
// wdio.conf.js
const { TimelineService } = require('wdio-timeline-reporter/timeline-service');
exports.config = {
// ...
reporters: [['timeline', { outputDir: './desired_location' }]],
// ...
services: [[TimelineService]]
};