Тек Rust тілінде жазылған орындаушы орта.
Бұл бағдарлама бір ғана Rust процесінде жұмыс істейді. Оған сыртқы браузер, WebDriver немесе Node.js қажет емес.
Ашық код / Қапшық.
"browser-tester" – бұл Rust тілінде жасалған, нақты браузерге ұқсас, алдын ала анықталған тестілеу жүйесі. Ол нақты браузерді іске қоспай-ақ, DOM (Document Object Model) және оқиғалардың жұмыс істейтін тәсілін тексеруге мүмкіндік береді.
"Browser-tester" бағдарламасы толық браузердің өріністік үйлесімділігіне емес, керісінше, формалар мен интерфейстің алдын-ала белгіленген мінез-құлқын тестілеуге бағытталған.
Бұл бағдарлама бір ғана Rust процесінде жұмыс істейді. Оған сыртқы браузер, WebDriver немесе Node.js қажет емес.
Бұл жүйе қайталанатын сынақтарды жүргізу үшін арнайы жобаланған: жасалма уақыт, анықталған случайный генератор және уақытты басқаруға арналған нақты API интерфейстері қолданылған.
Браузерге ұқсас практикалық функционалдылықты қолдау: элементтерді таңдау, кодты тікелей орындау, оқиғаларды тарату және DOM-ді жаңарту.
Формаға бағытталған интерфейс тестілеу үшін жылдам кері байланыс циклы қамтамасыз етіледі, сонымен қатар, қателер туралы ақпараттардың бағытталуы таңдамаларға және күтілген/нақты мәндерге шоғырланады.
HTML-кодты пайдаланып сынақ құралдарын жасаңыз, олармен өзара әрекеттесіңіз және DOM-ның нәтижелерін тексеріңіз. Кішірек сынақ құралымен бастап, одан кейін уақытты есептеу функцияларын немесе жасалмалы API-ларды қосып, оны кеңейтіңіз.
Орнатыңыз.
cargo командасы арқылы "browser_tester" модулін қосыңыз.
Негізгі мысал.
Негізгі DOM тестілеу операциялары: `Harness::from_html`, `type_text`, `set_checked`, `click`, `submit` және мәтін, мән, таңдаулы күй және объектінің болуын тексеруге арналған көмекші функциялар.
Асинхронды жұмысты жасалмаған уақыт көзету арқылы басқаруға болады. `advance_time`, `advance_time_to`, `flush` және уақытты тексеру API-лерін пайдаланып, уақытты белгілі бір тәртіпте жылжытуға мүмкіндік бар.
Тесттерді бөлек жүргізу үшін `set_fetch_mock`, `enqueue_confirm_response` және `enqueue_prompt_response` функцияларын қолданып, жауаптарды және диалог нәтижелерін жасалмалы түрде орналастырыңыз.
Тест сәтсіздікпен аяқталған кезде, бақылау журналдарын қосып, оқиғалар мен таймерлердің тіркеуін алыңыз. Бұл, оқиғалардың ретін және әрекеттердің стандартты жүрісін түсінуге көмектеседі.
Егер сіздің сынақ пакетіңізге қосымша браузер API-лары қажет болса, мүмкін болатын мәселелерді талқылау үшін, шектеулер мен маңыздылықты көрсететін минималды мысалмен бірге сұрақ қойыңыз.