Dhasar Uji Piranti Lunak - Pitakon lan Wangsulan

Pengujian Piranti Lunak minangka kegiatan ing pangembangan piranti lunak. Iki minangka investigasi sing ditindakake marang piranti lunak kanggo menehi informasi babagan kualitas piranti lunak kasebut kanggo para pemangku kepentingan.



Apa sing Diuji Piranti Lunak?

Wong sing beda duwe macem-macem definisi kanggo Uji Piranti Lunak, nanging umume, tujuane yaiku:

  • Kanggo mesthekake manawa piranti lunak kasebut nyukupi persyaratan lan desain sing disarujuki
  • Aplikasi kasebut bisa digunakake kaya samesthine
  • Aplikasi ora ngemot bug sing serius
  • Nemu panggunaan sing dituju minangka pangarepan pangguna

Pengujian piranti lunak asring digunakake magepokan karo istilah kasebut verifikasi lan validasi .


Validasi : Apa kita nindakake tugas sing bener? Verifikasi : Apa kita nindakake tugas kanthi bener?

Verifikasi yaiku mriksa utawa nyoba item, kalebu piranti lunak, kanggo cocog lan konsistensi karo spesifikasi sing gegandhengan.


Validasi minangka proses mriksa manawa sing wis ditemtokake yaiku apa sing sejatine dikepengini dening pangguna.

Tes piranti lunak mung minangka salah sawijining jinis verifikasi, sing uga nggunakake teknik kayata review, analisis, pamriksa lan walk-through.



Apa Tes Eksplorasi lan kapan kudu ditindakake?

Definisi Tes Eksplorasi yaiku 'desain tes lan eksekusi simultan' tumrap aplikasi. Iki tegese panguji nggunakake ilmu domain lan pengalaman nyoba kanggo prédhiksi ing ngendi lan ing kahanan apa sistem kasebut bisa tumindak ora kaduga. Nalika panguji wiwit nggoleki sistem kasebut, ide desain tes anyar dipikirake kanthi cepet lan dileksanakake nglawan piranti lunak sing lagi dites.

Ing sesi uji coba eksplorasi, panguji nglakokake serangkaian tumindak marang sistem, saben tumindak gumantung karo asil tumindak sadurunge, mula asil asil tumindak bisa mengaruhi apa sing ditindakake tester sabanjure, mula sesi tes kasebut ora padha.


Iki beda karo Tes Skrip sing tes dirancang sadurunge nggunakake persyaratan utawa dokumen desain, biasane sadurunge sistem siyap lan nglakokake langkah-langkah sing padha karo sistem kasebut ing wektu liyane.

Tes Eksplorasi biasane ditindakake nalika produk berkembang (lincah) utawa minangka mriksa pungkasan sadurunge piranti lunak dirilis. Iki minangka kegiatan komplementer kanggo tes regresi otomatis.



Apa Teknik Tes sing ana lan apa tujuane?

Teknik Tes utamane digunakake kanggo rong tujuan: a) Kanggo mbantu ngenali cacat, b) Kanggo nyuda jumlah kasus tes.

  • Pemisahan kesetaraan umume digunakake kanggo nyuda jumlah kasus tes kanthi ngenali macem-macem data sing ora padha lan mung nglakokake siji tes saka saben set data
  • Analisis Nilai Bates digunakake kanggo mriksa prilaku sistem ing watesan data sing diidini.
  • Pengujian Transisi Negara digunakake kanggo validasi negara lan transisi sing diidini lan ora diidini saka siji negara menyang negara liyane kanthi macem-macem data input
  • Tes pasangan-wicaksana utawa Kabeh Pasangan minangka teknik tes sing kuat banget lan umume digunakake kanggo nyuda jumlah kasus tes nalika nambah jangkoan kombinasi fitur.


Napa Perlu Pengujian?

Pengujian perlu kanggo ngenali cacat sing ana ing piranti lunak sing bisa nyebabake cilaka. Tanpa dites sing tepat, kita bisa uga bisa ngeculake piranti lunak sing bisa salah fungsi lan nyebabake cilaka serius.


Tuladhane bisa:

  • Piranti lunak ing mesin dhukungan urip sing bisa nyebabake wong lara serius;
  • Piranti lunak ing pabrik nuklir sing ngawasi kegiatan nuklir bisa nyebabake lingkungan
  • Aplikasi perbankan utawa finansial sing ngetung kurs bisa nyebabake kerugian finansial ing bisnis


Apa bedane Bug, Cacat, Kesalahan, Gagal, Kesalahan, lan Kesalahan?

Kesalahan lan Kesalahan iku padha. Bug, cacat, lan kesalahan minangka perkara sing padha.

Umume, manungsa bisa nggawe kesalahan (kesalahan) sing ngasilake cacat (bug, kesalahan) ing aplikasi piranti lunak sing bisa nyebabake kegagalan.

Cacat kedadeyan amarga manungsa gampang nggawe kesalahan, uga aplikasi piranti lunak bisa uga kompleks banget dadi integrasi komponen sing beda bisa nyebabake tumindak aneh.




Pira tes cukup?

Ora ana jawaban sing mesthi kanggo pitakonan iki. Tes ora mutlak lan ora ana watesan. Nanging, kita bisa nggunakake metrik risiko (pengujian adhedhasar risiko) kanggo ngenali skenario sing bisa nyebabake paling mbebayani utawa bagean piranti lunak sing biasane digunakake supaya fokus wektu lan gaweyan menyang bagean sing paling penting.

Tes kudu nyedhiyakake informasi sing cukup babagan status utawa kesehatan aplikasi, saengga para pemangku kepentingan bisa njupuk keputusan babagan ngeculake piranti lunak kasebut utawa nggunakake luwih akeh wektu kanggo nyoba.



Apa Proses Tes Dhasar

Kanggo entuk kegiatan tes sing paling akeh, proses sing kudu ditemtokake kudu ditindakake. Nanging sadurunge kegiyatan pengujian diwiwiti, gaweyan kudu ditindakake kanggo ngasilake rencana tes sing apik. Rencana uji coba sing apik bakal ditindakake supaya bisa ngetrapake kegiyatan pengujian apa sing nyoba digayuh.

Sampeyan bisa uga ditrapake kanggo lingkungan uji coba sing cukup formal (kayata misi kritis). Umume organisasi komersial duwe proses pangujian sing kurang ketat. Nanging, upaya uji coba bisa nggunakake langkah-langkah kasebut ing sawetara bentuk.


Proses Tes Dhasar kalebu limang kegiyatan:

  • Perencanaan
  • Spesifikasi
  • Kaleksanan
  • Ngrekam
  • Priksa Tes Tes

Proses tes mesthi diwiwiti karo Perencanaan Tes lan dipungkasi karo Priksa Rampung Tes.

Kabeh lan kabeh kegiyatan bisa diulang (utawa paling ora dibaleni maneh) amarga ana sawetara pengulangan sing dibutuhake sadurunge kriteria rampung sing ditemtokake sajrone kegiyatan Perencanaan Tes ditemokake.



Pitung Prinsip Pengujian Piranti Lunak

Ing ngisor iki ana pitu prinsip pangujian piranti lunak:

1. Tes nuduhake anane kewan omo

Tes aplikasi mung bisa mbukak manawa ana siji utawa luwih cacat ing aplikasi kasebut, nanging tes dhewe ora bisa mbuktekake manawa aplikasi kasebut bebas kesalahan. Mula, kudu ngrancang kasus tes sing paling bisa ditemokake.

2. Tes sing ngeselake ora bisa ditindakake

Kajaba aplikasi sing dites (AUT) duwe struktur logis sing gampang banget lan input winates, sampeyan ora bisa nyoba kabeh kombinasi data lan skenario sing mungkin. Amarga iku, risiko lan prioritas digunakake kanggo musatake aspek sing paling penting kanggo nyoba.

3. Tes awal

Langkung cepet kita miwiti kegiyatan pangujian, mula kita bisa nggunakake wektu sing kasedhiya. Sanalika produk dhisikan, sarat utawa dokumen desain kasedhiya, mula bisa dites. Umume kanggo tahap uji coba dipencet ing pungkasan siklus siklus pangembangan, yaiku nalika pembangunan rampung, mula kanthi miwiti tes luwih dhisik, kita bisa nyiyapake tes kanggo saben level siklus siklus pangembangan.

Titik penting liyane babagan tes awal yaiku yen cacat ditemokake luwih cepet ing siklus siklus, luwih gampang lan luwih murah kanggo didandani. Luwih murah yen ngganti syarat sing salah tinimbang kudu ngowahi fungsi ing sistem gedhe sing ora bisa digunakake kaya sing dijaluk utawa kaya sing dirancang!

4. kluster cacat

Sajrone tes, bisa dimangerteni manawa sebagian besar cacat sing dilaporake ana gandhengane karo sawetara modul sajrone sistem. yaiku sawetara modul sing ngemot sebagian besar cacat ing sistem. Iki minangka aplikasi Prinsip Pareto kanggo nyoba piranti lunak: udakara 80% masalah ditemokake ing 20% ​​modul.

5. Paradoks pestisida

Yen sampeyan terus mbukak tes sing padha bola-bali, kemungkinan bakal ora ana cacat anyar sing bakal ditemokake ing kasus uji kasebut. Amarga sistem kasebut berkembang, akeh cacat sing dilaporake sadurunge wis diatasi lan kasus tes lawas ora ditrapake maneh.

Yen ana kesalahan sing ditanggulangi utawa ditambahake fungsi anyar, kita kudu nindakake tes regresi kanggo nggawe manawa piranti lunak sing diganti durung ngrusak bagean piranti lunak liyane. Nanging, kasus uji regresi kasebut uga kudu diowahi kanggo nggambarake pangowahan sing digawe ing piranti lunak supaya bisa ditrapake lan muga-muga cacat anyar bisa ditrapake.

6. Tes gumantung saka konteks

Metodologi, teknik lan jinis pangujian sing beda-beda gegandhengan karo jinis lan sifat aplikasi. Contone, aplikasi piranti lunak ing piranti medis mbutuhake tes luwih saka piranti lunak game.

Luwih penting piranti lunak piranti medis mbutuhake tes adhedhasar risiko, tundhuk karo regulator industri medis lan bisa uga teknik desain tes tartamtu.

Kanthi cara sing padha, situs web sing populer banget, kudu nyoba tes kinerja sing ketat uga nyoba fungsionalitas kanggo mesthekake kinerja kasebut ora kena pengaruh beban server.

7. Anane kesalahan kesalahan

Mung amarga tes ora nemokake cacat ing piranti lunak, ora ateges piranti lunak wis siap dikirim. Apa tes sing dieksekusi pancen dirancang kanggo paling cacat? utawa ing ngendi dheweke ngrancang kanggo ndeleng manawa piranti lunak kasebut cocog karo syarat pangguna? Ana akeh faktor liyane sing kudu dipikirake sadurunge njupuk keputusan kanggo ngirim piranti lunak kasebut.



Apa Tes Kotak Putih

Tes kothak putih menehi hasil karo logika internal lan struktur kode. Tes kothak putih uga diarani tes kaca, struktural, open box utawa clear box. Tes sing ditulis adhedhasar strategi pangujian kothak putih nggabungake jangkoan kode sing ditulis, cabang, jalur, pratelan lan logika internal kode lsp.

Kanggo ngetrapake tes kothak putih, panguji kudu menehi hasil karo kode kasebut lan mula dibutuhake kanggo nduwe ilmu babagan kodhe lan logika yaiku kerja internal kode kasebut. Tes kothak putih uga butuh panguji kanggo nemokake kode lan ngerteni unit / pernyataan / potongan kode kasebut sing salah.

Pengujian Unit

Pangembang nindakake tes unit supaya bisa mriksa manawa modul utawa unit kode tartamtu wis bisa digunakake. Pengujian Unit kasedhiya ing level dhasar amarga bisa ditindakake nalika unit kode dikembangake utawa dibangun fungsi tartamtu.

Analisis statis lan dinamis

Analisis statis kalebu ngliwati kode kasebut kanggo ngerteni cacat sing ana ing kode kasebut. Analisis dinamis kalebu nglakokake kode lan nganalisa output.

Jangkoan Pratelan

Ing jinis pangujian, kode kasebut dieksekusi kanthi cara supaya saben pernyataan aplikasi ditindakake paling ora sepisan. Mbantu manawa kabeh pernyataan dieksekusi tanpa efek samping.

Jangkoan Cabang

Ora ana aplikasi piranti lunak sing bisa ditulis nganggo mode pengkodean terus-terusan, ing sawetara wektu kita kudu milih kode kasebut supaya bisa nindakake fungsi tartamtu. Tes jangkoan cabang mbantu validasi kabeh cabang ing kode lan priksa manawa ora ana cabang sing nyebabake tumindak ora normal saka aplikasi kasebut.

Tes Keamanan

Tes Keamanan ditindakake supaya bisa ngerteni manawa sistem bisa nglindhungi awake dhewe saka akses sing ora sah, hacking - cracking, kerusakan kode lan liya-liyane sing cocog karo kode aplikasi. Jinis pangujian iki butuh teknik tes sing canggih.

Tes Mutasi

Jinis pangujian, aplikasi dites kanggo kode sing diowahi sawise ndandani bug / cacat tartamtu. Iki uga mbantu ngerteni kode lan strategi ngode apa sing bisa mbantu ngembangake fungsi kanthi efektif.

Kaluwihan Tes Kotak Putih

Amarga pengetahuan babagan struktur kode internal minangka prasyarat, dadi gampang banget kanggo nemokake jinis input / data sing bisa mbantu nyoba aplikasi kanthi efektif. Keuntungan liyane saka tes kothak putih yaiku mbantu ngoptimalake kode Iki mbantu mbusak garis kode tambahan, sing bisa nyebabake cacat sing didhelikake.

Kerugian Tes Kotak Putih

Amarga kawruh babagan kode lan struktur internal minangka prasyarat, dibutuhake tester trampil kanggo nindakake jinis tes iki, sing nambah biaya. Lan meh ora bisa digoleki kode supaya bisa nemokake kesalahan sing didhelikake, sing bisa nyebabake masalah, nyebabake gagal aplikasi kasebut.



Apa sing Diuji Black Box

Ing Black Box Testing, panguji nyoba nyoba aplikasi tanpa ngerti proses internal aplikasi sing dites.

Amarga pangujian kothak ireng ora prelu karo kode sing ndasari, mula teknik kasebut bisa diduweni saka dokumen persyaratan utawa spesifikasi desain lan mula tes bisa diwiwiti yen persyaratane ditulis.

Teknik Tes Analisis Nilai Wates

Analisis nilai wates, BVA, nyoba tumindak program kanthi wates. Nalika mriksa sawetara nilai, sawise milih sekumpulan data sing ana ing sekat sing bener, sabanjure mriksa cara program tumindak ing wates watesan saka sekat sing bener. Analisis nilai wates paling umum nalika mriksa sawetara angka.

Teknik Transisi Negara

Teknik tes transisi negara digunakake ing endi sawetara aspek sistem bisa diterangake kanthi apa sing diarani 'mesin negara sing winates'. Iki mung tegese sistem bisa ing sawetara (sawetara) negara sing beda-beda, lan transisi saka siji negara menyang negara liyane ditemtokake dening aturan 'mesin'.

Iki model sing adhedhasar sistem lan tes. Sistem apa wae sing sampeyan entuk output sing beda kanggo input sing padha, gumantung karo apa sing kedadeyan sadurunge, minangka sistem negara sing winates.

Teknik Tes Pemisahan Setara

Gagasan teknik tes pemisahan kesetaraan yaiku ngilangi serangkaian data input sing nggawe sistem tumindak beda lan ngasilake asil sing padha nalika nyoba program.

Proses teknik pemisahan kesetaraan kalebu ngenali kumpulan data minangka kahanan input sing menehi asil sing padha nalika nglakokake program lan ngelasake minangka sekumpulan data sing padha (amarga nggawe program nindakake cara sing padha lan ngasilake output sing padha ) lan partisi saka set data sing padha.

Kaluwihan Tes Kotak Ireng

  • Tes kasebut ora adil amarga desainer lan tester ora independen.
  • Penguji ora butuh ilmu babagan basa pamrograman tartamtu.
  • Tes kasebut ditindakake saka sudut pandang pangguna, dudu desainer.
  • Kasus tes bisa dirancang sanalika spesifikasi lengkap.

Kerugian Tes Kothak Ireng

  • Tes kasebut bisa uga berlebihan yen perancang piranti lunak wis nglakokake kasus tes.
  • Kasus tes angel dirancang.
  • Nguji saben aliran input sing bisa uga ora realistis amarga butuh wektu sing suwe; mula, akeh jalur program sing bakal ora dites.