Testing with Playwright
Tämä dokumentaatio kuvaa prosessia webforJ-sovellusten testaamiseksi Playwrightin avulla, keskittyen erityisesti HelloWorldView
-komponenttiin webforj-archetype-hello-world
-projektista.
Sovelluksen perusteet
Jos haluat oppia lisää webforj-archetype-hello-world
-projektista, katso Sovelluksen perusteet -esittely -osan.
Edellytykset
Ennen Playwright-testausten kirjoittamista ja suorittamista varmista, että:
- webforJ-sovellus on oikein asetettu ja käynnissä paikallisella palvelimellasi.
- Olet asentanut:
- Playwright Java -sitojat.
- Yhteensopivan selaimen (Playwright voi automaattisesti asentaa selaimia asetusten aikana).
- Maven projektiriippuvuuksia varten.
Maven-konfigurointi
Lisää tarvittavat riippuvuudet pom.xml
-tiedostoosi Playwrightille:
pom.xml
<dependencies>
<dependency>
<groupId>com.microsoft.playwright</groupId>
<artifactId>playwright</artifactId>
<version>1.49.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
Testiesimerkki: HelloWorldView
Seuraava koodi havainnollistaa Playwright-pohjaista testiä HelloWorldView
-komponentille.
HelloWorldViewTest.java
package com.example.views;
import static com.microsoft.playwright.assertions.PlaywrightAssertions.assertThat;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import com.microsoft.playwright.Browser;
import com.microsoft.playwright.BrowserType;
import com.microsoft.playwright.Page;
import com.microsoft.playwright.Playwright;
class HelloWorldViewTest {
static Playwright playwright = Playwright.create();
Browser browser;
Page page;
String port = System.getProperty("server.port", "8080");
@BeforeEach
void setUp() {
browser = playwright.chromium().launch();
page = browser.newPage();
page.navigate("http://localhost:" + port + "/");
}
@Test
void shouldClickButton() {
page.locator("input").fill("webforJ");
page.getByText("Say Hello").click();
assertThat(page.locator("dwc-toast").first())
.containsText("Welcome to webforJ Starter webforJ!");
}
}
Avainvaiheet
-
Alustaminen Playwrightissa:
- Luo
Playwright
-instanssi. - Käynnistä selaininstanssi käyttäen
playwright.chromium().launch()
.
- Luo
-
Testiympäristön asettaminen:
- Avaa uusi selainvälilehti käyttäen
browser.newPage()
. - Siirrä
HelloWorldView
-sivullenavigate
-metodin avulla.
- Avaa uusi selainvälilehti käyttäen
-
Vuorovaikutus Elementtien kanssa:
- Käytä Playwrightin sijoittimia vuorovaikutukseen DOM-elementtien kanssa.
- Täytä syöttökentät
locator("input").fill()
ja laukaise toimenpiteitä käyttäengetByText("Say Hello").click()
.
-
Väittämiä:
- Vahvista näytettävä toast-viesti
PlaywrightAssertions.assertThat()
-metodilla.
- Vahvista näytettävä toast-viesti
-
Purku:
- Playwright käsittelee selaimen puhdistuksen automaattisesti testin päätyttyä. Manuaalista puhdistusta varten voit sulkea selaimen käyttäen
browser.close()
.
- Playwright käsittelee selaimen puhdistuksen automaattisesti testin päätyttyä. Manuaalista puhdistusta varten voit sulkea selaimen käyttäen
Testien suorittaminen
-
Käynnistä webforJ-palvelin:
mvn jetty:run
-
Suorita testitapaukset:
mvn test
Odotettu käyttäytyminen
- Kun vierailet
http://localhost:<port>/
,HelloWorldView
-sivu latautuu. - Syötä webforJ tekstikenttään ja napsauta
Say Hello
-painiketta. - Toast-viestin pitäisi ilmestyä, jossa on teksti:
Welcome to webforJ Starter webforJ!
.