Atvērtā koda / Kastes.

pārlūkprogrammu testētājs

`browser-tester` ir deterministiska, pārlūkbrūķim līdzīga testa izpildes sistēma, kas izveidota, izmantojot tikai valodu Rust. Tā pārbauda DOM un notikumu darbību, neizmantojot īstu pārlūkprogrammu.

Rūsēšana. Noteikta izpildes laika ilgums. DOM testēšana.

Kas šim konteineram ir labs.

"Browser-tester" koncentrējas uz paredzamiem testa gadījumiem, kas pārbauda veidlapu un lietotāja interfeisa darbību, nevis uz pilnīgu saderību ar dažādiem pārlūkprogrammām.

Tikai Rust valodas izpildes vidē paredzēta programma.

Tas darbojas vienā Rust procesā. Nav nepieciešams ārējs pārlūkprogrammu, WebDriver vai Node.js.

Noteikti izpildes režīms.

Izstrādāts, lai nodrošinātu atkārtotus testus: simulēts pulkstenis, deterministisks nejaušības skaitļu ģenerators un skaidri definētas API funkcijas laika kontrolei.

DOM un notikumu testēšana.

Atbalsta praktiskus, pārlūkprogrammām līdzīgus darbības veidus: elementu izvēli, inline skriptu izpildi, notikumu izplatību un DOM (Dokumenta Objekta Modeļa) atjauninājumus.

Ātra un vietēja atsauksme.

Ātra atgriezeniskās saites sistēma formām orientētiem lietotāja interfeisa testiem, vienlaikus nodrošinot, ka kļūdu ziņojumi koncentrējas uz izvēlētajiem elementiem un paredzētajām/faktiskajām vērtībām.

Ātrā lietošanas instrukcija.

Izveidojiet testa vidi, izmantojot HTML, veiciet mijiedarbības un pārbaudiet DOM rezultātus. Sāciet ar nelielu testa konfigurāciju un paplašiniet to, izmantojot taimerus un simulētas API.

Instalēt.

cargo: pievieno `browser_tester` moduli.

Pamata piemērs.

Galvenā API funkcionalitāte.

Sistēmas darbības + apgalvojumi.

Galvenās DOM testa darbības: `Harness::from_html`, `type_text`, `set_checked`, `click`, `submit`, kā arī palīgtamērīgi elementi pārbaudei attiecībā uz tekstu/vērtību/statusu "izvēlēts" un elementa esamību.

Noteikti taimeri.

Kontrolējiet asinhronu darbību, izmantojot simulētu pulksteni. Precīzi virziet laiku, izmantojot funkcijas `advance_time`, `advance_time_to`, `flush` un API, kas ļauj pārbaudīt taimerus.

Iebūvētie simulācijas rīki.

Izmantojiet funkcijas `set_fetch_mock`, `enqueue_confirm_response` un `enqueue_prompt_response`, lai simulētu datu iegūšanas procesus un dialogu rezultātus, lai nodrošinātu, ka testi ir izolēti.

Traku un diagnostikas līdzekļi.

Iespējojiet izsekošanas žurnālus un iegūstiet notikumu/timeru darbības secību, ja tests neveicas. Tas ir noderīgi kļūdu meklēšanai, lai analizētu notikumu secību un noklusējuma darbību.

Darba laika politika.

  • Funkcija "eval" ir apzināti neatbalstīta, lai nodrošinātu drošību un paredzamību.
  • Šī testēšanas platforma ir paredzēta praktisku testēšanas scenāriju simulēšanai, nevis pilnīgai saderībai ar reāliem pārlūkprogrammām.
  • Ārējā tīkla I/O funkcijas nav iekļautas šajā darbības jomā; testēšanai izmantojiet simulācijas (mock) datu avotus.

Ja jūsu testa komplektam nepieciešami papildu pārlūkprogrammu API, atveriet ziņojumu un iekļaujiet minimālu testēšanas konfigurāciju, lai apspriestu jautājumu un prioritāti.