Runtime okruženje isključivo za programski jezik Rust.
Radi unutar jednog procesa napisanog u programskom jeziku Rust. Ne zahteva korišćenje eksternih pregledača, WebDriver-a ili Node.js-a.
Otvoriti kod / Kontejner.
"browser-tester" je deterministička testna okolina koja simulira rad pregledača i implementirana je u programskom jeziku Rust. Ona validira ponašanje DOM-a i događaja bez potrebe za pokretanjem pravog pregledača.
"Browser-tester" se fokusira na testiranje predvidivog ponašanja formulara i korisničkog interfejsa, umesto na kompatibilnost sa različitim načinima prikazivanja u pregledačima.
Radi unutar jednog procesa napisanog u programskom jeziku Rust. Ne zahteva korišćenje eksternih pregledača, WebDriver-a ili Node.js-a.
Dizajniran za ponavljajuće testove: uključuje simulirani časovnik, deterministički generator slučajnih brojeva i API-je za preciznu kontrolu tajmera.
Podržava praktične funkcije slične onima u pregledačima: selektore, izvršavanje skripti u liniji, propagaciju događaja i ažuriranje DOM strukture.
Brz ciklus povratnih informacija za testiranje korisničkog interfejsa zasnovanog na formulama, uz fokus izveštaja o greškama na selektorima i očekivanim/stvarnim vrednostima.
Kreirajte testni okvir koristeći HTML, pokrenite interakcije i proverite rezultate DOM-a. Počnite sa malim testnim skriptama i proširite ih korišćenjem tajmera i simuliranih API-ja.
Instalirajte.
cargo dodaj browser_tester.
Osnovni primer.
Osnovne operacije testiranja DOM-a: `Harness::from_html`, `type_text`, `set_checked`, `click`, `submit`, kao i pomoćne funkcije za proveru teksta/vrednosti/statusa "odabrano"/"postojanja".
Kontrolišite asinkrono ponašanje pomoću simuliranog sata. Napredujte vreme deterministički koristeći funkcije `advance_time`, `advance_time_to`, `flush` i API-je za inspekciju tajmera.
Koristite funkcije `set_fetch_mock`, `enqueue_confirm_response` i `enqueue_prompt_response` da biste simulirali odgovore sa servera i rezultate dijaloga, čime ćete osigurati da testovi budu izolovani.
Omogućite beleženje detaljnih informacija i prikupljanje podataka o toku događaja/tajmera kada test ne prođe. Ovo je korisno za otklanjanje grešaka u redosledu događaja i ponašanju podrazumevanih akcija.
Ako vam je potrebno više API-ja za pregledače za vaš skup testova, otvorite zahtev (issue) uz minimalan primer koda kako bismo razgovarali o obimu i prioritetu.