پرش به محتوای اصلی

سرویس QUnit

wdio-qunit-service یک پکیج شخص ثالث است، برای اطلاعات بیشتر لطفا مراجعه کنید به GitHub | npm

npm test

WebdriverIO (wdio) سرویسی برای اجرای تست‌های مبتنی بر مرورگر QUnit و تبدیل پویای آن‌ها به مجموعه تست‌های wdio.

جایگزینی Karma

QUnit Service یک جایگزین آماده برای کسانی است که از Karma JS برای اجرای تست‌های QUnit خود استفاده می‌کنند (karma-qunit، karma-ui5 یا هر ترکیب دیگری از Karma و QUnit). Karma منسوخ شده است و افراد باید به گزینه‌های مدرن مهاجرت کنند!

اگر می‌خواهید تست‌های QUnit خود را همانطور که هستند حفظ کنید، بدون بازنویسی و بدون بازسازی، QUnit Service تمام چیزی است که نیاز دارید. این سرویس فایل‌های HTML مربوط به QUnit را در مرورگر اجرا کرده و تمام نتایج را در قالب wdio ثبت می‌کند.

به همین دلیل، توسعه‌دهندگان می‌توانند از QUnit Service در کنار همه امکانات موجود در اکوسیستم wdio استفاده کنند.

می‌خواهید اجرای تست را در یک ویدیو ضبط کنید؟ شاید می‌خواهید اسکرین‌شات بگیرید یا آن را در PDF ذخیره کنید؟ پوشش کد را بررسی کنید؟ نتایج تست را در قالب JUnit ذخیره کنید؟ انجامش دهید، QUnit Service مانع شما نمی‌شود.

نصب

بعد از پیکربندی WebdriverIO، wdio-qunit-service را به عنوان یک devDependency در فایل package.json خود نصب کنید.

npm install wdio-qunit-service --save-dev

اگر هنوز WebdriverIO را پیکربندی نکرده‌اید، مستندات رسمی را مطالعه کنید.

پیکربندی

برای استفاده از QUnit Service فقط کافی است آن را به لیست services در فایل wdio.conf.js خود اضافه کنید. مستندات wdio تمام اطلاعات مربوط به فایل پیکربندی را دارد:

// wdio.conf.js
export const config = {
// ...
services: ["qunit"],
// ...
};

استفاده

اطمینان حاصل کنید که وب سرور قبل از اجرای تست‌ها فعال و در حال اجراست. wdio وب سرور را راه‌اندازی نخواهد کرد.

با فایل‌های .spec یا .test

در تست WebdriverIO خود، باید به صفحه تست HTML مربوط به QUnit هدایت شوید، سپس browser.getQUnitResults() را فراخوانی کنید.

describe("QUnit test page", () => {
it("should pass QUnit tests", async () => {
await browser.url("http://localhost:8080/test/unit/unitTests.qunit.html");
await browser.getQUnitResults();
});
});

توصیه می‌شود برای هر صفحه تست HTML مربوط به QUnit، یک فایل تست WebdriverIO داشته باشید. این امر تضمین می‌کند که تست‌ها به صورت موازی و کاملاً ایزوله اجرا شوند.

فقط پیکربندی، بدون فایل‌های .spec یا .test

اگر نمی‌خواهید فایل‌های spec/test ایجاد کنید، می‌توانید لیستی از فایل‌های HTML مربوط به QUnit را به پیکربندی منتقل کنید و تست‌ها به صورت خودکار تولید خواهند شد.

// wdio.conf.js
export const config = {
// ...
baseUrl: 'http://localhost:8080',
services: [
['qunit', {
paths: [
'unit-tests.html',
'integration-tests.html',
'test/qunit.html'
]
}],
// ...
};

نتایج تست

نتایج تست می‌تواند به این شکل باشد: QUnit Service test results

نمونه‌ها

پوشه examples را برای نمونه‌هایی با استفاده از javascript، typescript و موارد بیشتر بررسی کنید.

استفاده در برنامه‌های SAP Fiori / UI5

نمونه مستقیم با استفاده از openui5-sample-app شناخته شده:

  • ایجاد یک فایل پیکربندی: wdio.conf.js

  • به wdio بگویید فایل‌های تست QUnit را کجا پیدا کند:

    • یا
  • وب سرور باید قبل از اجرای تست‌ها در حال اجرا باشد

  • اجرا کنید $ wdio run webapp/test/wdio.conf.js

نویسنده

Mauricio Lauffer

مجوز

این پروژه تحت مجوز MIT است - برای جزئیات فایل LICENSE را مشاهده کنید.

Welcome! How can I help?

WebdriverIO AI Copilot