Przejdź do głównej treści

Z biegiem czasu nasza społeczność opracowała kilka projektów, które możesz wykorzystać jako inspirację do ustawienia własnego zestawu testów.

Projekty szablonowe v9

webdriverio/cucumber-boilerplate

Nasz własny szablon dla zestawów testowych Cucumber. Stworzyliśmy ponad 150 predefiniowanych definicji kroków, dzięki czemu możesz od razu zacząć pisać pliki funkcji w swoim projekcie.

  • Framework:
    • Cucumber
    • WebdriverIO
  • Funkcje:
    • Ponad 150 predefiniowanych kroków, które obejmują prawie wszystko, czego potrzebujesz
    • Integruje funkcjonalność Multiremote WebdriverIO
    • Własna aplikacja demonstracyjna

webdriverio/jasmine-boilerplate

Projekt szablonowy do uruchamiania testów WebdriverIO z Jasmine wykorzystując funkcje Babel i wzorzec obiektów stron.

  • Frameworki
    • WebdriverIO
    • Jasmine
  • Funkcje
    • Wzorzec obiektów stron
    • Integracja z Sauce Labs

webdriverio/electron-boilerplate

Projekt szablonowy do uruchamiania testów WebdriverIO na minimalnej aplikacji Electron.

  • Frameworki
    • WebdriverIO
    • Mocha
  • Funkcje
    • Mockowanie API Electron

amiya-pattnaik/wdio-testgen-from-gherkin-js

amiya-pattnaik/wdio-testgen-from-gherkin-ts

Automatycznie generuj klasy WebdriverIO Page Object i specyfikacje testów Mocha z plików .feature Gherkin — zmniejszając ręczny wysiłek, poprawiając spójność i przyspieszając automatyzację QA. Ten projekt nie tylko produkuje kod kompatybilny z webdriver.io, ale także rozszerza wszystkie funkcjonalności webdriver.io. Stworzyliśmy dwie wersje, jedną dla użytkowników JavaScript i drugą dla użytkowników TypeScript. Jednak oba projekty działają w ten sam sposób.

Jak to działa?

  • Proces działa w dwóch krokach automatyzacji:
  • Krok 1: Gherkin do stepMap (Generowanie plików stepMap.json)
    • Generowanie plików stepMap.json:
      • Parsuje pliki .feature napisane w składni Gherkin.
      • Wyodrębnia scenariusze i kroki.
      • Tworzy ustrukturyzowany plik .stepMap.json zawierający:
        • akcję do wykonania (np. click, setText, assertVisible)
        • selectorName dla logicznego mapowania
        • selector dla elementu DOM
        • notatkę dla wartości lub asercji
  • Krok 2: stepMap do kodu (Generowanie kodu WebdriverIO). Używa stepMap.json do generowania:
    • Generuje bazową klasę page.js z wspólnymi metodami i konfiguracją browser.url().
    • Generuje kompatybilne z WebdriverIO klasy Page Object Model (POM) na funkcję wewnątrz test/pageobjects/.
    • Generuje testy bazujące na Mocha.
  • Przykład struktury katalogów dla JavaScript / TypeScript. Poniżej dla wersji JS, wersja TS ma taką samą strukturę.
project-root/
├── features/ # Gherkin .feature files (user input / source file)
├── stepMaps/ # Auto-generated .stepMap.json files
├── test/
│ ├── pageobjects/ # Auto-generated WebdriverIO tests Page Object Model classes
│ └── specs/ # Auto-generated Mocha test specs
├── src/
│ ├── cli.js # Main CLI logic
│ ├── generateStepsMap.js # Feature-to-stepMap generator
│ ├── generateTestsFromMap.js # stepMap-to-page/spec generator
│ ├── utils.js # Helper methods
│ └── config.js # Paths, fallback selectors, aliases
│ └── __tests__/ # Unit tests (Vitest)
├── testgen.js # CLI entry point
│── wdio.config.js # WebdriverIO configuration
├── package.json # Scripts and dependencies
├── selector-aliases.json # Optional user-defined selector overrides the primary selector

Projekty szablonowe v8

amiya-pattnaik/webdriverIO-with-cucumberBDD

  • Framework: WDIO-V8 z Cucumber (V8x).
  • Funkcje:
    • Model obiektów stron używa podejścia opartego na klasach ES6/ES7 i wsparcia TypeScript
    • Przykłady opcji wielu selektorów do zapytania elementu z więcej niż jednym selektorem naraz
    • Przykłady wykonania wielu przeglądarek i przeglądarek bez interfejsu graficznego - Chrome i Firefox
    • Integracja testów w chmurze z BrowserStack, Sauce Labs, LambdaTest
    • Przykłady odczytu/zapisu danych z MS-Excel dla łatwego zarządzania danymi testowymi z zewnętrznych źródeł danych z przykładami
    • Wsparcie bazy danych dla dowolnego RDBMS (Oracle, MySql, TeraData, Vertica itp.), wykonywanie dowolnych zapytań / pobieranie zestawów wyników itp. z przykładami dla testów E2E
    • Wiele raportów (Spec, Xunit/Junit, Allure, JSON) i hostowanie raportów Allure oraz Xunit/Junit na WebServerze.
    • Przykłady z aplikacją demo https://search.yahoo.com/ i http://the-internet.herokuapp.com.
    • Pliki .config specyficzne dla BrowserStack, Sauce Labs, LambdaTest i Appium (do odtwarzania na urządzeniach mobilnych). W celu jednorazowej konfiguracji Appium na lokalnej maszynie dla iOS i Android, zapoznaj się z appium-setup-made-easy-OSX.

amiya-pattnaik/webdriverIO-with-mochaBDD

  • Framework: WDIO-V8 z Mocha (V10x).
  • Funkcje:
    • Model obiektów stron używa podejścia opartego na klasach ES6/ES7 i wsparcia TypeScript
    • Przykłady z aplikacją demo https://search.yahoo.com i http://the-internet.herokuapp.com
    • Przykłady wykonania wielu przeglądarek i przeglądarek bez interfejsu graficznego - Chrome i Firefox
    • Integracja testów w chmurze z BrowserStack, Sauce Labs, LambdaTest
    • Wiele raportów (Spec, Xunit/Junit, Allure, JSON) i hostowanie raportów Allure oraz Xunit/Junit na WebServerze.
    • Przykłady odczytu/zapisu danych z MS-Excel dla łatwego zarządzania danymi testowymi z zewnętrznych źródeł danych z przykładami
    • Przykłady połączenia z bazą danych do dowolnego RDBMS (Oracle, MySql, TeraData, Vertica itp.), wykonywania dowolnych zapytań / pobierania zestawów wyników itp. z przykładami dla testów E2E
    • Pliki .config specyficzne dla BrowserStack, Sauce Labs, LambdaTest i Appium (do odtwarzania na urządzeniach mobilnych). W celu jednorazowej konfiguracji Appium na lokalnej maszynie dla iOS i Android, zapoznaj się z appium-setup-made-easy-OSX.

amiya-pattnaik/webdriverIO-with-jasmineBDD

  • Framework: WDIO-V8 z Jasmine (V4x).
  • Funkcje:
    • Model obiektów stron używa podejścia opartego na klasach ES6/ES7 i wsparcia TypeScript
    • Przykłady z aplikacją demo https://search.yahoo.com i http://the-internet.herokuapp.com
    • Przykłady wykonania wielu przeglądarek i przeglądarek bez interfejsu graficznego - Chrome i Firefox
    • Integracja testów w chmurze z BrowserStack, Sauce Labs, LambdaTest
    • Wiele raportów (Spec, Xunit/Junit, Allure, JSON) i hostowanie raportów Allure oraz Xunit/Junit na WebServerze.
    • Przykłady odczytu/zapisu danych z MS-Excel dla łatwego zarządzania danymi testowymi z zewnętrznych źródeł danych z przykładami
    • Przykłady połączenia z bazą danych do dowolnego RDBMS (Oracle, MySql, TeraData, Vertica itp.), wykonywania dowolnych zapytań / pobierania zestawów wyników itp. z przykładami dla testów E2E
    • Pliki .config specyficzne dla BrowserStack, Sauce Labs, LambdaTest i Appium (do odtwarzania na urządzeniach mobilnych). W celu jednorazowej konfiguracji Appium na lokalnej maszynie dla iOS i Android, zapoznaj się z appium-setup-made-easy-OSX.

syamphaneendra/webdriverio-web-mobile-boilerplate

Ten projekt szablonowy zawiera testy WebdriverIO 8 z cucumber i typescript, wykorzystując wzorzec obiektów stron.

  • Frameworki:

    • WebdriverIO v8
    • Cucumber v8
  • Funkcje:

    • Typescript v5
    • Wzorzec obiektów stron
    • Prettier
    • Wsparcie dla wielu przeglądarek
      • Chrome
      • Firefox
      • Edge
      • Safari
      • Standalone
    • Równoległe wykonanie na różnych przeglądarkach
    • Appium
    • Integracja testów w chmurze z BrowserStack i Sauce Labs
    • Usługa Docker
    • Usługa udostępniania danych
    • Oddzielne pliki konfiguracyjne dla każdej usługi
    • Zarządzanie danymi testowymi i odczyt według typu użytkownika
    • Raportowanie
      • Dot
      • Spec
      • Wiele raportów html cucumber z zrzutami ekranu niepowodzeń
    • Pipelines Gitlab dla repozytorium Gitlab
    • Github actions dla repozytorium Github
    • Docker compose do konfiguracji docker hub
    • Testy dostępności przy użyciu AXE
    • Testy wizualne przy użyciu Applitools
    • Mechanizm logowania

klassijs/klassi-js (cucumber-template)

  • Frameworki

    • WebdriverIO (v8)
    • Cucumber (v8)
  • Funkcje

    • Zawiera przykładowy scenariusz testowy w cucumber
    • Zintegrowane raporty html cucumber z osadzonymi filmami przy niepowodzeniach
    • Zintegrowane usługi Lambdatest i CircleCI
    • Zintegrowane testy wizualne, dostępności i API
    • Zintegrowana funkcjonalność Email
    • Zintegrowany bucket s3 do przechowywania i pobierania raportów testowych

serenity-js/serenity-js-mocha-webdriverio-template/

Szablon projektu Serenity/JS, który pomoże Ci rozpocząć testy akceptacyjne aplikacji internetowych przy użyciu najnowszych WebdriverIO, Mocha i Serenity/JS.

  • Frameworki

    • WebdriverIO (v8)
    • Mocha (v10)
    • Serenity/JS (v3)
    • Raportowanie Serenity BDD
  • Funkcje

serenity-js/serenity-js-cucumber-webdriverio-template/

Szablon projektu Serenity/JS, który pomoże Ci rozpocząć testy akceptacyjne aplikacji internetowych przy użyciu najnowszych WebdriverIO, Cucumber i Serenity/JS.

  • Frameworki

    • WebdriverIO (v8)
    • Cucumber (v9)
    • Serenity/JS (v3)
    • Raportowanie Serenity BDD
  • Funkcje

Muralijc/wdio-headspin-boilerplate

Projekt szablonowy do uruchamiania testów WebdriverIO w chmurze Headspin (https://www.headspin.io/) przy użyciu funkcji Cucumber i wzorca obiektów stron.

  • Frameworki

    • WebdriverIO (v8)
    • Cucumber (v8)
  • Funkcje

    • Integracja z chmurą Headspin
    • Obsługuje model obiektów stron
    • Zawiera przykładowe scenariusze napisane w deklaratywnym stylu BDD
    • Zintegrowane raporty html cucumber

Projekty szablonowe v7


webdriverio/appium-boilerplate

Projekt szablonowy do uruchamiania testów Appium z WebdriverIO dla:

  • Natywnych aplikacji iOS/Android
  • Aplikacji hybrydowych iOS/Android
  • Przeglądarek Android Chrome i iOS Safari

Ten szablon zawiera następujące elementy:

  • Framework: Mocha
  • Funkcje:
    • Konfiguracje dla:
      • Aplikacji iOS i Android
      • Przeglądarek iOS i Android
    • Pomocniki dla:
      • WebView
      • Gestów
      • Natywnych alertów
      • Pickerów
    • Przykłady testów dla:
      • WebView
      • Logowania
      • Formularzy
      • Przewijania
      • Przeglądarek

serhatbolsu/webdriverio-mocha-uiautomation-boiler

Testy ATDD WEB z Mocha, WebdriverIO v6 z PageObject

  • Frameworki
    • WebdriverIO (v7)
    • Mocha
  • Funkcje
    • Model obiektów stron
    • Integracja z Sauce Labs przy użyciu Sauce Service
    • Raport Allure
    • Automatyczne przechwytywanie zrzutów ekranu dla nieudanych testów
    • Przykład CircleCI
    • ESLint

WarleyGabriel/demo-webdriverio-mocha

Projekt szablonowy do uruchamiania testów E2E z Mocha.

17thSep/WebdriverIO_Master

Projekt szablonowy do uruchamiania testów WebdriverIO v7 dla następujących:

Skrypty WDIO 7 z TypeScript w frameworku Cucumber Skrypty WDIO 7 z TypeScript w frameworku Mocha Uruchamianie skryptów WDIO 7 w Dockerze Logi sieciowe

Projekt szablonowy dla:

  • Przechwytywania logów sieciowych
  • Przechwytywania wszystkich wywołań GET/POST lub określonego API REST
  • Asercji parametrów żądania
  • Asercji parametrów odpowiedzi
  • Przechowywania wszystkich odpowiedzi w osobnym pliku

Arjun-Ar91/Wdio7-appium-cucumber

Projekt szablonowy do uruchamiania testów appium dla natywnych aplikacji i przeglądarek mobilnych przy użyciu cucumber v7 i wdio v7 z wzorcem obiektów stron.

  • Frameworki

    • WebdriverIO v7
    • Cucumber v7
    • Appium
  • Funkcje

    • Natywne aplikacje Android i iOS
    • Przeglądarka Android Chrome
    • Przeglądarka iOS Safari
    • Model obiektów stron
    • Zawiera przykładowe scenariusze testowe w cucumber
    • Zintegrowany z wieloma raportami html cucumber

praveendvd/webdriverIODockerBoilerplate/

Jest to projekt szablonowy, który ma pomóc pokazać, jak uruchamiać testy webdriverio z aplikacji internetowych przy użyciu najnowszego WebdriverIO i frameworka Cucumber. Ten projekt ma służyć jako bazowy obraz, którego możesz użyć do zrozumienia, jak uruchamiać testy WebdriverIO w dockerze

Ten projekt zawiera:

  • DockerFile
  • Projekt cucumber

Czytaj więcej na: Medium Blog

praveendvd/WebdriverIO_electronAppAutomation_boilerplate/

Jest to projekt szablonowy, który ma pomóc pokazać, jak uruchamiać testy electronJS przy użyciu WebdriverIO. Ten projekt ma służyć jako bazowy obraz, którego możesz użyć do zrozumienia, jak uruchamiać testy WebdriverIO electronJS.

Ten projekt zawiera:

  • Przykładową aplikację electronjs
  • Przykładowe skrypty testowe cucumber

Czytaj więcej na: Medium Blog

praveendvd/webdriverIO_winappdriver_boilerplate/

Jest to projekt szablonowy, który ma pomóc pokazać, jak automatyzować aplikacje Windows przy użyciu winappdriver i WebdriverIO. Ten projekt ma służyć jako bazowy obraz, którego możesz użyć do zrozumienia, jak uruchamiać testy windappdriver i WebdriverIO.

Czytaj więcej na: Medium Blog

praveendvd/appium-chromedriver-multiremote-wdio-boilerplate/

Jest to projekt szablonowy, który ma pomóc pokazać, jak uruchamiać funkcję multiremote webdriverio z najnowszym WebdriverIO i frameworkiem Jasmine. Ten projekt ma służyć jako bazowy obraz, którego możesz użyć do zrozumienia, jak uruchamiać testy WebdriverIO w dockerze

Ten projekt używa:

  • chromedriver
  • jasmine
  • appium

webdriverio-roku-appium-boilerplate

Szablon projektu do uruchamiania testów appium na prawdziwych urządzeniach Roku przy użyciu mocha z wzorcem obiektów stron.

  • Frameworki

    • WebdriverIO Async v7
    • Appium 2.0
    • Mocha v7
    • Raportowanie Allure
  • Funkcje

    • Model obiektów stron
    • Typescript
    • Zrzut ekranu przy niepowodzeniu
    • Przykładowe testy wykorzystujące przykładowy kanał Roku

krishnapollu/wdio-cucumber-poc

Projekt PoC dla testów E2E Multiremote Cucumber, a także testów Mocha opartych na danych

  • Framework:

    • Cucumber (v8)
    • WebdriverIO (v8)
    • Mocha (v8)
  • Funkcje:

    • Testy E2E oparte na Cucumber
    • Testy Mocha oparte na danych
    • Testy tylko internetowe - zarówno lokalnie, jak i na platformach chmurowych
    • Testy tylko mobilne - lokalne oraz zdalne emulatory w chmurze (lub urządzenia)
    • Testy Web + Mobile - Multiremote - zarówno lokalnie, jak i na platformach chmurowych
    • Zintegrowane wiele raportów, w tym Allure
    • Dane testowe (JSON / XLSX) obsługiwane globalnie, aby zapisać dane (tworzone na bieżąco) do pliku po wykonaniu testu
    • Workflow GitHub do uruchamiania testów i przesyłania raportu allure

Rondleysg/wdio-multiremote-appium-chromedriver-boilerplate

Jest to projekt szablonowy, który ma pomóc pokazać, jak uruchamiać webdriverio multi-remote przy użyciu usługi appium i chromedriver z najnowszym WebdriverIO.

Welcome! How can I help?

WebdriverIO AI Copilot