Test-Framework für Browser und mobile Automatisierung der nächsten Generation für Node.js
Testen in realen Umgebungen
Mit WebdriverIO können Sie in echten Browsern oder mobilen Geräten testen, die von Ihren Benutzern verwendet werden.
Vielseitig und Funktionsreich
Verwenden Sie WebdriverIO für vollständige e2e- oder Unit- und Komponententests im Browser.
Automatisches Warten
WebdriverIO wartet automatisch auf das Erscheinen von Elementen, bevor es mit ihnen interagiert.
Basierend auf Webstandards
Cross-Browser-Unterstützung durch Automatisierung durch WebDriver und WebDriver Bidi.
Native Mobile Unterstützung
Führen Sie WebdriverIO auf echten Mobilgeräten, Smart-TVs oder anderen IoT-Geräten über Appium aus.
Engagierte Gemeinschaft
Betrieb einer support channel mit über 8.000 Mitgliedern und einem reichen Ökosystem von Community-verwalteten 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()
getByText('count is 2')
})
})
E2E und Unit/Component Testing im echten Browser!
WebdriverIO ist ein alles in einem Framework für Ihre Web Development Arbeit. Es ermöglicht Ihnen einfache unit oder Komponenten Tests, sowie auch e2e Test Anwendungen zu schreiben, die im Browser oder auf dem Mobilen Gerät ausgeführt werden können. Dies garantiert, dass Sie in einer Umgebung testen, welches auch von Ihren Nutzern genutzt wird.
Es kommt mit intelligenten Befehlen, die die Interaktion z.B. mit React Komponenten oder verschachtelten Shadow-DOM-Elementen vereinfachen. Da Interaktionen über ein standardisiertes Automatisierungsprotokoll erfolgen, ist garantiert, dass sie sich nativ verhalten und nicht nur druch JavaScript emuliert werden.
Starten Sie innerhalb von Sekunden mit WebdriverIO
The WebdriverIO testrunner comes with a command line interface that provides a powerful configuration utility and helps you to create your test setup in less than a minute. It lets you pick from available test framework integrations and easily allows to add all supported reporter and service plugins!
Mit nur einem einfachen Befehl können Sie eine vollständige Testsuite einrichten:
$ npm init wdio@latest ./
Erfahren Sie mehr über WebdriverIO und die ersten Schritte auf Youtube.
Sehen Sie sich Vorträge über WebdriverIO an
Die Community rund um WebdriverIO spricht aktiv auf verschiedenen Benutzergruppen oder Konferenzen über spezifische Themen rund um das automatisierte Testen mit WebdriverIO. Sehen Sie sich diesen Vortrag auf Meine Lieblingsfunktionen von WebdriverIO von Julia Pottinger auf Open Quality Conference an.
Es gibt auch viele YouTube-Kanäle mit nützlichen Tutorials von Community-Mitgliedern wie Klamping, Seventeenth Sep oder Automation Bro.
Google Lighthouse-Integration
WebdriverIO führt nicht nur Automatisierung basierend auf dem WebDriver-Protokoll aus, sondern nutzt auch native Browser-APIs, um Integrationen in beliebte Entwicklertools wie Chrome DevTools oder Google Lighthouse zu ermöglichen. Mit dem @wdio/devtools-service
Plugin haben Sie Zugriff auf Befehle zum Überprüfen, ob Ihre App eine gültige PWA-Anwendung ist, sowie auf Befehle zum Erfassen von Frontend-Leistungsmetriken wie „speedIndex“ und anderen.
await browser.emulateDevice('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)