Samo okolje za izvajanje programov, napisanih v jeziku Rust.
Deluje znotraj enega samega procesa v programskem jeziku Rust. Ne potrebuje zunanjih brskalnikov, knjižnic WebDriver ali platforme Node.js.
Odprtokodni projekt / Knjižnica.
"browser-tester" je deterministična testna okolja, ki deluje kot brskalnik in je implementirana izključno v programskem jeziku Rust. Preverja obnašanje DOM (Document Object Model) in dogodkov, ne da bi za to bila potrebna resnična brskalna aplikacija.
"Browser-tester" se osredotoča na preverjanje predvidljivega obnašanja obrazcev/vmesnikov, namesto na popolno združljivost z različnimi brskalniki.
Deluje znotraj enega samega procesa v programskem jeziku Rust. Ne potrebuje zunanjih brskalnikov, knjižnic WebDriver ali platforme Node.js.
Zasnovano za ponavljajoče se teste: vključuje simuliran uravnik, deterministično začetno vrednost za generator naključnih števil in API-je za natančen nadzor časovnika.
Podpira praktične funkcije, podobne brskalnikom: izbiro elementov, izvajanje skript v vrstici, prenos dogodkov in posodobitve DOM-a.
Hitro odzivno okolje za testiranje uporabniških vmesnikov, ki so osredotojeni na obrazce, pri čemer je izhodna informacija o napakah usmerjena na izbirnike in pričakovane/dejanske vrednosti.
Ustvarite testno okolje (harness) z uporabo HTML, izvedite interakcije in preverite rezultate DOM. Začnite z majhnim testnim primerom in ga razširite z uporabo časovnikov ali simuliranih API-jev.
Namestite.
cargo dodaj paket browser_tester.
Osnoven primer.
Osnovne operacije za testiranje DOM: `Harness::from_html`, `type_text`, `set_checked`, `click`, `submit` ter pomožne funkcije za preverjanje besedila/vrednosti/stanje "odkljukano"/obstojnosti.
Asinhrono obnašanje nadzirajte z uporabo simuliranega časovnika. Napredovanje časa določajte na predvidljiv način z uporabo funkcij `advance_time`, `advance_time_to`, `flush` in API-jev za pregled časovnikov.
Uporabite funkcije `set_fetch_mock`, `enqueue_confirm_response` in `enqueue_prompt_response`, da simulirate odgovore strežnika in rezultate dialogov, s čimer zagotovite, da bodo testi izolirani.
Omogočite beleženje sledi in izluščite podatke o zaporedju dogodkov/časovnih intervalov, ko test ne uspe. To je koristno za odpravljanje napak pri zaporedju dogodkov in obnašanju privzetih dejanj.
Če potrebujete dodatne API-je za brskalnik za vašo testno suito, odprite zahtevo (issue) in priložite minimalen primer uporabe, da se lahko razpravlja o obsegu in prioriteti.