Strategi Otomatisasi Tes Kanggo Proyek Agile

Contone Strategi Otomatisasi Tes iki nganggep model pangiriman terus-terusan kanthi pirang-pirang tim tangkas.

Ing artikel sadurunge, overarching Strategi Tes Agile dokumen uga cara nyiyapake fungsi QA saka awal kanggo proyek tangkas lan kepiye uji coba otomatis minangka salah sawijining item kunci ing persiyapan awal.

Ing conto Strategi Otomatisasi Tes iki, aku nyathet poin-poin penting sing kudu dipikirake supaya bisa entuk manfaat saka upaya otomatisasi tes.




Ringkesan Eksekutif

Pengujian Otomatis minangka kegiatan inti saka metodologi pangembangan tangkas. Nalika kita pindhah menyang penyebaran terus-terusan, otomasi tes dadi luwih penting amarga tanggapan cepet sing diwenehake kanggo tim pangembangan babagan kesehatan aplikasi kasebut.

Kanggo entuk umpan balik cepet iki, tes otomatis kudu dieksekusi kanthi terus-terusan, kudu cepet lan asil tes kudu konsisten lan dipercaya.


Kanggo nggayuh iki, mayoritas verifikasi kudu ditindakake minangka bagean saka pangembangan fitur-fitur anyar. Kanthi tembung liya, pangembangan lan pangujian kudu dadi kegiyatan sing koheren, lan kualitas kudu 'dipanggang' wiwit wiwitan kanthi mesthekake apa sing dikembangake bisa digunakake lan ora ngrusak fungsine sing ana.



Iki mbutuhake 'kuwalik piramida otomasi tes' kanthi meksa nindakake tes GUI sing butuh wektu suwe, nganti luwih murah level. Lapisan API sing bisa mlaku langsung sawise tes unit minangka bagean saka pambangunan kanggo nyedhiyakake kapercayan dhisikan.

Gegandhengan:



Ringkesan Strategi Otomatisasi Tes

Nyegah, dudu deteksi - nalika upaya kudu ditindakake kanggo nyegah cacat aplikasi ing wiwitan, teknik lan metode sing ana ing njaba ruang lingkup kiriman iki. Ing kene, metodologi ditetepake kanggo ngidini ndeteksi bug kanthi cepet nalika dilebokake ing sistem lan menehi saran pangembangan.


Kualitas luwih disenengi tinimbang jumlah. Ing kasus paling, luwih becik diluncurake kanthi siji fitur sing solid tinimbang sawetara fitur sing flaky. Minangka kritéria rilis minimal, fitur sing mentas dikembangake ora ngenalake cacat regresi.

Kaya sing wis kasebut, umpan balik cepet babagan kesehatan aplikasi penting banget kanggo ndhukung pangiriman terus-terusan, mula proses lan mekanisme sing bisa entuk umpan balik kanthi cepet dirumusake.

Salah sawijining cara kanggo entuk saran cepet yaiku kanthi nambah jumlah tes unit, tes integrasi, lan tes API. Tes level paling murah iki bakal nyedhiyakake jaring pengaman supaya kode bisa digunakake kaya sing dienggo lan mbantu nyegah cacat uwal lapisan tes liyane.

Tes Unit nggawe dhasar kanggo otomasi tes ing level sing luwih dhuwur.


Elemen perbaikan kaping pindho yaiku nglakokake tes regresi luwih asring lan selaras karo proses Integrasi Terus, mengko. Pengujian Otomatis ora bisa dianggep minangka tugas sing terisolasi, nanging minangka kegiatan sing koheren sing dipasang ing SDLC.



Definisi Paket Regresi

Tes regresi otomatis minangka inti saka Strategi Otomatisasi Tes.

Paket Regresi Asap

Paket regresi minangka cek kesehatan yen aplikasi bisa dimuat lan diakses. Uga, mung sawetara skenario utama sing uga kudu diluncurake kanggo mesthekake aplikasi isih fungsi.

Tujuan saka paket tes asap yaiku kanggo nyekel masalah sing paling jelas, kayata aplikasi sing ora dimuat, utawa aliran pangguna umum ora bisa ditindakake; amarga iki, tes asap kudu suwene maneh 5 menit kanggo menehi umpan balik kanthi cepet yen ana perkara sing utama ora bisa digunakake.


Paket tes asap bisa digunakake ing saben deploy lan bisa dicampur karo tes API lan / utawa GUI.

Paket Regresi Fungsional , Sing dimaksud kanggo mriksa fungsi aplikasi kanthi luwih rinci tinimbang tes asap.

Paket kemunduran macem-macem kudu ana macem-macem tujuan. Yen ana pirang-pirang tim sing makarya ing macem-macem bagean aplikasi, mula mesthine kudu ana macem-macem paket regresi sing bisa fokus ing wilayah sing dikerjakake tim.

Paket kasebut kudu bisa mlaku ing lingkungan apa wae lan yen dibutuhake, yen prilaku fitur kasebut tetep konsisten ing saindenging lingkungan. Dheweke dieksekusi kaping pirang-pirang dina lan ora luwih saka 15 nganti 30 menit.


Amarga tes fungsional iki luwih rinci, mula butuh wektu luwih suwe, mula penting kanggo nggawe mayoritas tes fungsional ing lapisan API sing tes bisa ditindakake kanthi luwih cepet supaya bisa ana ing njero 15 nganti 30 menit watesan wektu.

Paket Regresi Akhir-kanggo-Pungkasan, sing nyoba kabeh aplikasi kanthi sakabehe. Tujuan tes kasebut yaiku supaya macem-macem bagean aplikasi sing nyambung menyang macem-macem database lan aplikasi pihak katelu bisa mlaku kanthi bener.

Tes Akhir-kanggo-Akhir dudu kanggo nyoba kabeh fungsi amarga wis diuji ing paket regresi fungsional, nanging tes kasebut minangka 'bobot entheng' sing mung mriksa transisi saka siji negara menyang negara liyane lan sawetara saka skenario utawa lelungan pangguna sing paling penting.

Tes iki utamane dieksekusi liwat GUI, amarga mriksa cara pangguna nggunakake sistem kasebut. Wektu sing dibutuhake kanggo nindakake iki bisa beda-beda saka siji aplikasi menyang aplikasi liyane nanging biasane biasane dina sepisan utawa wengi.



Strategi Otomatisasi Tes kanggo Tim Multiple Agile

test_automation_strategy_agile

Tes Unit Otomatis

Uji Otomatisasi diwiwiti ing level unit. Tes unit kudu ditulis dening pangembang kanggo fitur anyar sing dikembangake. Tes Unit iki minangka dhasar praktik otomatisasi sing luwih gedhe sing kalebu nganti Tes Sistem GUI.

Tanggung jawab pangembang kanggo mesthekake manawa kanggo saben fitur anyar sing dikembangake, digawe tes Tes sing koheren lan padhet kanggo mbuktekake manawa kode kasebut bisa digunakake kaya sing wis ditemtokake lan memenuhi syarat.

Tes Unit nyedhiyakake ROI paling akeh kanggo tim amarga cepet banget mbukak, gampang dikelola lan diowahi (amarga ora ana katergantungan) lan yen ana kesalahan kode, mula bakal cepet dipasrahake maneh karo pangembang.

Tes unit ditindakake ing mesin pangembang uga lingkungan CI.

Integrasi Integrasi / API utawa Tes Layanan

Nalika Tes Unit adhedhasar uji fungsi ing sawijining kelas, Tes Integrasi kalebu level sabanjure saka Tes Unit kanggo nyoba kelas sing kolektif nggawe komponen kanggo ngirim fungsi. Tes iki mung ditindakake nalika Tes Unit wis mlaku lan dilewati.

Tes Layanan lumrahe ditindakake ing lapisan API tanpa intervensi antarmuka web GUI; mula tes bakal bisa verifikasi fungsionalitas ing bentuk murni lan amarga tes bisa ngobrol langsung karo komponen, mula cepet ditindakake lan bakal dadi bagean saka pambangunan.

Yen prelu, dipoyoki kayata wiremock bakal digunakake kanggo ngilangi katergantungan 3 liyanepasuryansistem partai lan nalika sistem hilir ora kasedhiya kanggo nyedhiyani data sing dibutuhake kanggo nyoba.

Tes Integrasi lan / utawa Tes Layanan bisa uga diluncurake ing mesin pangembang lan dadi bagean saka pambangunane, nanging yen wiwit suwe, mula luwih becik mbukak ing lingkungan CI.

Piranti kayata SoapUI bisa digunakake kanggo Tes Layanan.

Pengujian Aplikasi

Aplikasi e-commerce khas bisa dipérang dadi macem-macem aplikasi utawa 'aplikasi' sing nyedhiyakake fungsi sing beda. Konsep 'Pengujian Aplikasi' yaiku klompok tes sing nyoba fungsi Aplikasi diatur bebarengan lan bisa nglawan App sing dipengini. Paket iki bakal migunani yen ana tim pengin ngeculake Aplikasi lan pengin ngerti apa fungsi kasebut kanthi bener.

Tes Aplikasi biasane mbutuhake antarmuka kanggo sesambungan karo macem-macem komponen, mula diarepake manawa tes kasebut ditindakake liwat browser ing GUI.

Tujuan Tes Aplikasi yaiku kanggo mesthekake yen fitur aplikasi bener fungsional. Amarga tes disusun kanthi cara kanggo nyedhiyakake kapercayan kanggo kesehatan aplikasi tartamtu, tes kasebut biasane diarani Tes Vertikal, amarga nglakokake 'mudhun' aplikasi tartamtu. Tes kasebut tuntas banget lan jangkoan akeh.

Selenium WebDriver bisa digunakake kanggo mbukak tes otomatis kasebut menyang browser. Alat iki paling populer kanggo tes otomatisasi browser lan nyedhiyakake API sing sugih kanggo ngidini verifikasi kompleks.

Tes Skenario Akhir-ke-Akhir

Tes otomatis GUI sing diluncurake karo sistem, dadi aliran pangguna, lelungan utawa skenario end-to-end sing khas. Amarga ana masalah karo jinis tes iki (dibahas ing ngisor iki), tes kasebut bakal tetep minimal. Skenario end-to-end kalebu ing paket regresi saben wengi.



Nguripake Piramida Otomatisasi Tes

Minangka bagean saka Strategi Otomatisasi Tes, kita kudu mriksa minimalake tes otomatis sing diluncurake ing lapisan GUI.

Nalika mbukak tes otomatis liwat GUI nyedhiyakake tes sing apik lan migunani babagan simulasi interaksi pangguna karo aplikasi kasebut, rawan akeh masalah kaya ing ngisor iki:

Rapuh

Amarga tes kasebut gumantung marang para pencari HTML kanggo ngenali elemen web sing bisa digandhengake, sanalika id diganti tes bakal gagal, mula bisa ditanggung akeh biaya perawatan.

Pengujian Terbatas

GUI bisa ngatasi kemampuan panguji kanggo verifikasi fitur kanthi lengkap amarga GUI bisa uga ora ngemot kabeh rincian saka respons web kanggo ngidini verifikasi.

Alon alon

Amarga tes dileksanakake liwat GUI, wektu mbukak kaca kanthi substansial bisa nambah wektu uji coba kanthi umum lan umpan balik kanggo pangembang relatif alon.

ROI paling ora

Amarga masalah sing kasebut ing ndhuwur, tes otomatis GUI nyedhiyakake ROI paling sithik.

Tes Otomasi Browser bakal tetep minimal lan bakal digunakake kanggo simulasi prilaku pangguna sing nggabungake alur pangguna umum lan skenario end-to-end ing endi sistem kasebut digunakake.