Yalnızca Rust proqramlaşdırma dilinə xas olan işləmə mühürü.
Bu proqram, tək bir Rust prosesi içərisində işləyir. Hər hansı xarici brauzer, WebDriver və ya Node.js proqram təminatına ehtiyacı yoxdur.
Açıq mənbə / Qutu.
"browser-tester" adlı proqram, tamamilə Rust proqramlaşdırma dilində yazılmış, brauzerə bənzər bir test mühitidir. Bu proqram, əsl brauzerin başlatılmasına ehtiyac olmadan, DOM (Document Object Model) və hadisələrin davranışını yoxlayır.
"Browser-tester" proqramı, tam brauzer uyğunluğu yox, daha çox proqram tərzləri və interfeys davranışının proqnozlaşdırılabilirliyini yoxlamaq üçün nəzərdə tutulub.
Bu proqram, tək bir Rust prosesi içərisində işləyir. Hər hansı xarici brauzer, WebDriver və ya Node.js proqram təminatına ehtiyacı yoxdur.
Təkrar edilə bilən testlər üçün nəzərdə tutulmuş dizayn: saxta saat, təkrarlana bilən təsadüfi mənbə və açıq zamanlayıcı idarəetmə API-ləri.
Praktiki olaraq brauzerlərin iş prinsipi ilə uyğun olan funksionallığı dəstəkləyir: seçicilər, daxili skriptlərin işlənməsi, hadisələrin yayılması və DOM-un yenilənməsi.
Forma əsaslanan interfeys testləri üçün sürətli və təfərrüqatlı məlumat qaytarma sistemi. Bu sistem, testlərin uğursuz olduğu hallarda, səbəbləri seçicilərə və gözlənilən/faktiki qiymətlərə yönəltməklə, daha aydın məlumat verir.
HTML-dən test mühitini yaradın, interaktiv testləri işə salın və DOM (Document Object Model) nəticələrini yoxlayın. Kiçik bir testlə başlayın və sonra onu zamanlayıcı və imitasiya API-ləri ilə genişləndirin.
Quraşdırın.
cargo əlavə et: browser_tester.
Əsas nümunə.
Əsas DOM testləri: Harness::from_html, type_text, set_checked, click, submit və mətn/dəyər/vəziyyət/varlıq yoxluğuna dair yoxlama funksiyaları.
Asinkron davranışları saxtə bir saat vasitəsilə idarə edin. `advance_time`, `advance_time_to`, `flush` və zamanlayıcı yoxlama API-ləri ilə vaxtı müəyyən bir şəkildə irəli etdirin.
Testlərin müstəqilliyini qorumaq üçün, `set_fetch_mock`, `enqueue_confirm_response` və `enqueue_prompt_response` funksiyalarını istifadə etməklə, testlərdəki "fetch" (məlumat göndərmə) cavablarını və dialoq nəticələrini simulyasiya edin.
Test uğursuz olduğu zaman, izləmə jurnalını aktiv edin və hadisə/zamanlayıcı axınını çıxarın. Bu, hadisələrin sırasını və default (standart) hərəkətlərin davranışını tədqiq etmək üçün faydalıdır.
Əgər testləriniz üçün əlavə brauzer API-lərinə ehtiyacınız varsa, məsələni müzakirə etmək, həmçinin əhatə dairəsi və prioritetləri dəqiqləşdirmək üçün bir problem açın və minimal bir test nümunəsi (fixture) əlavə edin.