إطار عمل اختبار أتمتة المتصفح والجوال من الجيل التالي لـ Node.js
اختبار في بيئات حقيقية
يتيح لك WebdriverIO الاختبار في متصفحات أو أجهزة محمولة حقيقية يستخدمها المستخدمون.
متعدد الاستخدامات وغني بالميزات
استخدم WebdriverIO للاختبار الشامل (e2e) أو اختبار الوحدات والمكونات في المتصفح.
انتظار تلقائي
ينتظر WebdriverIO تلقائيًا ظهور العناصر قبل التفاعل معها.
دعم الأجهزة المحمولة الأصلي
قم بتشغيل WebdriverIO على أجهزة محمولة حقيقية أو أجهزة التلفاز الذكية أو أجهزة إنترنت الأشياء الأخرى من خلال Appium.
مجتمع ملتزم
إدارة support channel بأكثر من 8 آلاف عضو ونظام بيئي غني من الإضافات التي يحافظ عليها المجتمع.
import { $, expect } from '@wdio/globals'
import { render } from '@testing-library/vue'
import HelloWorld from '../../src/components/HelloWorld.vue'
describe('Component Testing', () => {
it('increments value on click', async () => {
const { getByText } = render(HelloWorld)
const btn = getByText('count is 0')
// transform into WebdriverIO element
const button = await $(btn)
// interact with element like a real user
await button.click()
await button.click()
await expect(button).toMatchInlineSnapshot(
"count is 2"
)
})
})
اختبار شامل (E2E) واختبار الوحدات/المكونات في متصفح حقيقي!
WebdriverIO هو إطار عمل شامل لتطوير تطبيقات الويب الخاصة بك. يتيح لك تشغيل اختبارات مكونات صغيرة وخفيفة بالإضافة إلى تشغيل سيناريوهات اختبار شاملة في المتصفح أو على جهاز محمول. هذا يضمن لك إجراء الاختبار في بيئة يستخدمها مستخدموك.
يأتي مع استراتيجيات محدد ذكية تبسط التفاعل مع React components أو تشغيل استعلامات محدد عميقة مع أشجار DOM الظلية المتداخلة. نظرًا لأن التفاعلات تحدث من خلال بروتوكول أتمتة قياسي، فمن المضمون أنها تتصرف بشكل طبيعي وليست مجرد محاكاة JavaScript.
ابدأ مع WebdriverIO في ثوانٍ
يأتي مشغل اختبار WebdriverIO مع واجهة سطر أوامر توفر أداة تكوين قوية وتساعدك على إنشاء بيئة الاختبار الخاصة بك في أقل من دقيقة. يتيح لك الاختيار من تكاملات إطار الاختبار المتاحة ويسمح بسهولة بإضافة جميع المراسلين المدعومين وإضافات الخدمة!
مع أمر واحد بسيط يمكنك إعداد مجموعة اختبار كاملة:
$ npm init wdio@latest ./
ابدأ بمعرفة المزيد عن WebdriverIO وكيفية البدء على YouTube.
شاهد محادثات حول WebdriverIO
يتحدث المجتمع حول WebdriverIO بنشاط في مختلف مجموعات المستخدمين أو المؤتمرات حول مواضيع محددة تتعلق بالاختبار الآلي باستخدام WebdriverIO. تحقق من هذا الحديث على ميزاتي المفضلة في WebdriverIO بواسطة Julia Pottinger في Open Quality Conference.
هناك أيضًا العديد من قنوات YouTube مع دروس مفيدة من أعضاء المجتمع مثل Klamping و Seventeenth Sep أو Automation Bro.
تكامل Google Lighthouse
لا يقوم WebdriverIO فقط بتشغيل الأتمتة على أساس بروتوكول WebDriver، بل يستفيد أيضًا من واجهات برمجة تطبيقات المتصفح الأصلية لتمكين التكامل مع أدوات المطور الشائعة مثل Chrome DevTools أو Google Lighthouse. مع مكون إضافة @wdio/lighthouse-service
لديك إمكانية الوصول إلى الأوامر للتحقق مما إذا كان تطبيقك تطبيق PWA صالحًا بالإضافة إلى أوامر التقاط مقاييس أداء الواجهة الأمامية مثل `speedIndex` وغيرها.
await browser.emulate('device', 'iPhone X')
await browser.enablePerformanceAudits({
networkThrottling: 'Good 3G',
cacheEnabled: true,
formFactor: 'mobile'
})
// open application under test
await browser.url('https://localhost:3000')
expect(await browser.getMetrics().firstMeaningfulPaint)
.toBeBelow(2500)
const pwaCheckResult = await browser.checkPWA()
expect(pwaCheckResult.passed).toBe(true)
Open Source and Open Governed
نحن مشروع مفتوح المصدر ملتزم بشدة بالشفافية وحوكمة المجتمع. نحن جزء من OpenJS Foundation وهي جزء من Linux Foundation. يدار المشروع بالكامل من قبل متطوعين وممول من شركات مستثمرة ترغب في رؤية نجاح المشروع. فريق المشروع ممتن للرعاية السخية من هذه الشركات.
💎 Premium Sponsors
🥇 Gold Sponsors
إذا كنت تستخ دم WebdriverIO داخل مؤسستك، يرجى النظر في دعم المشروع من خلال becoming a sponsor. سيساعدنا ذلك في الحفاظ على استمرار المشروع وتطويره.