Nästa generations ramverk för webbläsare- och mobilautomatisering för Node.js
Testa i verkliga miljöer
WebdriverIO låter dig testa i faktiska webbläsare eller mobila enheter som används av dina användare.
Mångsidigt och funktionsrikt
Använd WebdriverIO för fullständig e2e eller enhets- och komponenttestning i webbläsaren.
Automatisk väntan
WebdriverIO väntar automatiskt på att element ska visas innan interaktion med dem sker.
Baserat på webbstandarder
Stöd för flera webbläsare via automatisering genom WebDriver och WebDriver Bidi.
Inbyggt mobilstöd
Kör WebdriverIO på riktiga mobila enheter, smarta TV-apparater eller andra IoT-enheter genom Appium.
Engagerad gemenskap
Driver en supportkanal med över 8 000 medlemmar och ett rikt ekosystem av gemenskapsutvecklade plugins.
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 och enhets-/komponenttestning i riktiga webbläsare!
WebdriverIO är ett allt-i-ett-ramverk för din webbutveckling. Det låter dig köra små och lättviktiga komponenttester samt köra e2e-testscenarier i webbläsaren eller på en mobil enhet. Detta garanterar att du testar i en miljö som används av dina användare.
Det kommer med smarta selectorstrategier som förenklar interaktion med till exempel React components eller att köra djupa selectorförfrågningar med nästlade shadow DOM-träd. Eftersom interaktioner sker genom ett standardiserat automatiseringsprotokoll är det garanterat att de beter sig som nativa och inte bara är JavaScript-emulerade.
Kom igång med WebdriverIO på några sekunder
WebdriverIO-testrunner kommer med ett kommandoradsgränssnitt som tillhandahåller ett kraftfullt konfigurationsverktyg och hjälper dig att skapa din testuppsättning på mindre än en minut. Det låter dig välja bland tillgängliga testramverksintegrationer och gör det enkelt att lägga till alla plugin för rapportering och tjänster som stöds!
Med bara ett enkelt kommando kan du sätta upp en komplett testsvit:
$ npm init wdio@latest ./
Börja lära dig mer om WebdriverIO och hur du kommer igång på YouTube.
Titta på föredrag om WebdriverIO
Gemenskapen kring WebdriverIO talar aktivt på olika användargrupper eller konferenser om specifika ämnen relaterade till automatiserad testning med WebdriverIO. Kolla in detta föredrag på Mina favoritfunktioner i WebdriverIO av Julia Pottinger på Open Quality Conference.
Det finns också många YouTube-kanaler med användbara handledningar av gemenskapsmedlemmar som Klamping, Seventeenth Sep eller Automation Bro.
Google Lighthouse-integration
WebdriverIO kör inte bara automatisering baserad på WebDriver-protokollet, det utnyttjar också inbyggda webbläsar-API:er för att möjliggöra integrationer till populära utvecklarverktyg som Chrome DevTools eller Google Lighthouse. Med plugin-modulen @wdio/lighthouse-service
har du tillgång till kommandon för att validera om din app är en giltig PWA-applikation samt kommandon för att fånga frontend-prestandamått som `speedIndex` och andra.
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 och gemenskapsstyrt
Vi är ett open source-projekt med ett starkt engagemang för transparens och gemenskapsstyrning. Vi är en del av OpenJS Foundation som är en del av Linux Foundation. Projektet drivs helt av volontärer och finansieras av engagerade företag som vill se projektet lyckas. Projektteamet är tacksamt för dessa företags generösa sponsring.
💎 Premium-sponsorer
🥇 Guldsponsorer
Om du använder WebdriverIO inom din organisation, överväg gärna att stödja projektet genom att bli en sponsor. Det hjälper oss att hålla projektet igång och utvecklas.
Vi vill rikta ett varmt tack till alla bidragsgivare som har hjälpt till att göra WebdriverIO till det kraftfulla verktyg det är idag. Ert engagemang och er insats uppskattas verkligen!