انتقل إلى المحتوى الرئيسي

WebdriverIO

إطار عمل اختبار أتمتة المتصفح والجوال من الجيل التالي لـ Node.js

برعاية
🌎

اختبار في بيئات حقيقية

يتيح لك WebdriverIO الاختبار في متصفحات أو أجهزة محمولة حقيقية يستخدمها المستخدمون.

🔩

متعدد الاستخدامات وغني بالميزات

استخدم WebdriverIO للاختبار الشامل (e2e) أو اختبار الوحدات والمكونات في المتصفح.

💤

انتظار تلقائي

ينتظر WebdriverIO تلقائيًا ظهور العناصر قبل التفاعل معها.

📒

مبني على معايير الويب

دعم متعدد المتصفحات عبر الأتمتة من خلال WebDriver و WebDriver Bidi.

📱

دعم الأجهزة المحمولة الأصلي

قم بتشغيل 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.

إعداد سهل لاختبار مكونات الويب مع:

Vue.jsNuxtSveltePreactSolidJSLitStencil

ابدأ مع 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` وغيرها.

التكامل مع أدوات المطور مثل:

Chrome DevToolsGoogle LighthouseAxe Accessibility Engine

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)

من يستخدم WebdriverIO؟

  • Google
  • Netflix
  • Microsoft
  • Mozilla
  • Buoyant
  • SAP
  • Salesforce
  • Hilton
  • Charles Schwab
  • JW Player
  • BBVA
  • GoPro
  • Algolia
  • Financial Times
  • Zendesk
  • 1&1
  • Avira
  • Deloitte
  • Rabobank
  • Bedrock Streaming

Open Source and Open Governed

نحن مشروع مفتوح المصدر ملتزم بشدة بالشفافية وحوكمة المجتمع. نحن جزء من OpenJS Foundation وهي جزء من Linux Foundation. يدار المشروع بالكامل من قبل متطوعين وممول من شركات مستثمرة ترغب في رؤية نجاح المشروع. فريق المشروع ممتن للرعاية السخية من هذه الشركات.

💎 Premium Sponsors

🥇 Gold Sponsors

إذا كنت تستخدم WebdriverIO داخل مؤسستك، يرجى النظر في دعم المشروع من خلال becoming a sponsor. سيساعدنا ذلك في الحفاظ على استمرار المشروع وتطويره.

Welcome! How can I help?

WebdriverIO AI Copilot