Sıfırdan bir Test Avtomatlaşdırma Çərçivəsini necə inkişaf etdirmək olar?

Bu addım-addım təlimatda Java, Selenium, TestNG və Maven istifadə edərək modullaşdırılmış bir Test Avtomatlaşdırma Çərçivəsini sıfırdan necə inkişaf etdirəcəyimi təsvir edəcəyəm.

Əvvəla, bir Test Avtomatlaşdırma Çərçivəsinin nə olduğunu və onu yaratmağın faydalarını görək.



Test Avtomatlaşdırma Çərçivəsi

Bir Test Avtomatlaşdırma Çərçivəsinin məqsədi nədir? İnkişaf qrupu üçün hansı problemləri həll edir?


Çevik inkişafda, yeni xüsusiyyətlərinizi vaxtında avtomatlaşdırmaq üçün kifayət qədər vaxtınız olmaya bilər, buna görə bir çox yerdə çox sayda kodu təkrarlayaraq avtomatik skriptlər yarada bilərsiniz.

Yenidən kodlama, böyük bir texnoloji borcunu artırmamaq üçün proqram inkişafının ayrılmaz bir hissəsidir. Bu, test avtomatlaşdırmasına da aiddir; avtomatlaşdırılmış skriptlərinizi yenidən quraraq, uzun müddət oxunuşu və istismarı yaxşılaşdıracaqsınız.


Bu Test Avtomatlaşdırma Çərçivə təlimatında son məhsul zamanla bir çox yenidən işlənmənin nəticəsidir. Aydındır ki, sınaq avtomatizasiyasından yaxşı bir gəlir əldə edəcəyiksə, davamlı inkişaf vacibdir.

Bir Test Avtomatlaşdırma Çərçivəsi yaratarkən aşağıdakı əsas məqamları nəzərdən keçirməliyik:

  • Müvafiq abstraksiya qatlarını istifadə edərək tez bir zamanda avtomatlaşdırılmış testlər yarada bilmək
  • Çərçivə mənalı bir qeyd və hesabat quruluşuna sahib olmalıdır
  • Asanlıqla saxlanıla bilən və uzadıla bilən olmalıdır
  • Test edənlərin avtomatlaşdırılmış testlər yazması üçün kifayət qədər sadə olmalıdır
  • Uğursuz testləri yenidən işə salmaq üçün yenidən bir cəhd mexanizmi - bu, xüsusilə WebDriver UI testləri üçün faydalıdır

Bu təlimatda mən istifadə edəcəyəm:

  • Java proqramlaşdırma dili kimi
  • TestNG təsdiq çərçivəsi kimi
  • Maven qurma vasitəsi kimi
  • WebDriver brauzer avtomatlaşdırma vasitəsi kimi
  • IntelliJ IDE olaraq

Bu Test Automation Framework təlimatı iki hissəyə bölünür:


Hissə 1: Əsas layihə və modulların və asılılıqların yaradılması

Hissə 2: Kod əlavə olunur

Bu təlimatın 1-ci hissəsində maşınınızda artıq Java və Maven quraşdırıldığını düşünürəm.

Sıfırdan Bir Test Avtomatlaşdırma Çərçivəsi Yaratmaq üçün Adımlar


Addım # 1 - Yeni maven layihəsi yaradın

IntelliJ IDE-ni açın və menyudan Yeni Layihə seçin. Daha sonra maraqlandığınız layihənin növünü seçmək üçün sizə bir ekran təqdim olunur.

Adım # 2 - Layihənizə bir ad verin


Layihə növü olaraq Maven seçin. GroupId və ArtifatId üçün ad verin - bu Test Avtomatlaşdırma Çərçivəsini Rima adlandırmağa qərar verdim.

Adım # 3 - Layihənizin yerini seçin

İndi layihəniz üçün bir ad seçin və iş yeriniz üçün bir qovluq seçin


Adım # 4 - Baza layihəsi yaradılmışdır

İndi yaradılmış bir əsas layihəniz var. Test Avtomatlaşdırma Çərçivəmizin strukturunu təşkil etmək üçün bu layihədə maven modulları yaratmağa başlaya bilərik.

Və pom.xml belə görünür

Bu, ana pom.xml ilə əsas layihəmiz olacaq olduğundan, bu layihədə heç bir kodumuz olmayacaq. Bunun əvəzinə Test Otomasyonu Çerçevesinin müxtəlif hissələri üçün maven modulları yaradacağıq. Davam edin və silin src qovluq.

Adım # 5 - Fərqli modullar yaradın

İndi çərçivəmiz üçün fərqli maven modulları yaratmaq vəziyyətindəyik. Aşağıdakı modulları yaradacağıq:

rima-çərçivə - bu modul avtomatlaşdırılmış testlərin yaradılmasını asanlaşdırmaq üçün bütün əlaqəli sinifləri və metodları ehtiva edir.

rima-domen - bu modul domenə məxsus dil (DSL) siniflərini ehtiva edir.

rima-səhifə-obyektləri - adından da göründüyü kimi, bu modul səhifə obyektlərini ehtiva edir.

rima-regresiya-testləri - və nəhayət avtomatlaşdırılmış regresiya testlərimiz.

Yaratmağa başlayacağıq rima-çərçivə modul. Bunu etmək üçün seçin Fayl> Yeni> Modul

Maven modulunu seçin və İleri düyməsini basın

Növbəti ekranda yaratdığınız modulun artifactId-i verə bilərsiniz, bu halda, rima-çərçivə

Ana modul və Rima kimi groupId qeyd edin və modulun adını verə biləcəyimiz Next düyməsini basın və Finish düyməsini basın.

Bir dəfə rima-çərçivə modul yaradılıb, buna bənzər bir şey görünməlidir

Bundan sonra modulların qalan hissəsini eyni şəkildə yaratmağa davam edə bilərik. Bütün modulları yaratdıqdan sonra layihəmiz aşağıdakı kimi olmalıdır

Və nəhayət, bütün modullar pom.xml kökünə əlavə edildi

Asılılıqlar əlavə edin

Bundan sonra, çərçivədəki modullar arasındakı asılılıqları əlavə etməklə yanaşı, Test Automation Framework-un asılı olduğu kitabxanaları və digər maven layihələrini də əlavə etməliyik.

Pom.xml sənədlərindəki asılılıqları əlavə etdim. GitHub repoumdakı pom.xml sənədlərinə nəzər yetirə bilərsiniz:

https://github.com/AmirGhahrai/Rima

Bu təlimatın 2-ci hissəsində Java, WebDriver və TestNG-də yazılmış həqiqi Test Avtomatlaşdırma Çərçivə kodundan keçəcəyik.

Və bu təlimatın 2-ci hissəsinə keçid:

Java və WebDriver ilə Səhifə Obyekt Model Çerçevesi

Əlavə oxu: