1 / 31

WHITE BOX TESTING

WHITE BOX TESTING. Testing dan implemantasi sistem. Tiga Tingkatan Testing secara Umum. Unit testing Testing penulisan kode-kode program dalam satuan unit terkecil secara individual. System Testing

Download Presentation

WHITE BOX TESTING

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. WHITE BOX TESTING Testing danimplemantasisistem

  2. Tiga Tingkatan Testing secara Umum • Unit testing Testing penulisankode-kode program dalamsatuan unit terkecilsecara individual. • System Testing Proses testing padasistemterintegrasiuntukmelakukanverifikasibahwasistemtelahsesuaispesifikasi. • Acceptance Testing Testing formal yang dilakukanuntukmenentukanapakahsistemtelahmemenuhikriteriapenerimaandanmemberdayakanpelangganuntukmenentukanapakahsistemdapatditerimaatautidak.

  3. Praktikunit testing secaraumum • Tujuan Konfirmasibahwamodultelahdikodedenganbenar. • Pelaku Biasanyaprogramer. • Apayang dites -Fungsi(Black Box). -Kode(White Box). -Kondisiekstrim dan batasan-batasan. • Kapanselesai Biasanyasaatprogramertelahmerasapuasdantidakdiketahuilagikesalahan. • Alatbantu Tidakbiasadigunakan. • Data Biasanyatidakdidata.

  4. Praktiksystem testing secaraumum • Tujuan Merakitmodulmenjadisuatusistem yang bekerja. Dan menentukankesiapanuntukmelakukanAcceptance Test. • Pelaku Pemimpintimataugruptes. • Apayang dites Kebutuhandanfungsisistem. Antarmukasistem. • Kapanselesai Biasanyabilamayoritaskebutuhantelahsesuaidantidakadakesalahan mayor yang ditemukan. • Alatbantu Sistempustakadanpustakatest case. Generator, komparatordan simulator data testing. • Data Data kesalahan yang ditemukan. Test case.

  5. Praktikacceptance testing secaraumum • Tujuan Mengevaluasi kesiapan untuk digunakan. • Pelaku Penggunaakhiratauagen. • Apayang dites Fungsimayor. Dokumentasi. Prosedur. • Kapanselesai Biasanyabilapenggunatelahmerasapuasatautesberjalandenganlancar / sukses. • Alatbantu Komparator. • Data Formalitasdokumen.

  6. DefinisiTest Case • Test case merupakan suatu tes yang dilakukan berdasarkan pada suatu inisialisasi, masukan, kondisi ataupun hasil yang telah ditentukan sebelumnya.

  7. Guna test case • Untukmelakukan testing kesesuaiansuatukomponenterhadapspesifikasi – Black Box Testing. • Untukmelakukan testing kesesuaiansuatukomponenterhadapdisain – White Box Testing.

  8. White Box Testing • Kadangdisebutjugaglass box testing atauclear box testing, adalahsuatumetodedisaintest case yang menggunakanstrukturkendalidaridisainprosedural. • Pendekatansecara internal yaitumemeriksaspesifikasiataukomponenproduk.

  9. Mengapa white box testing • Banyak error dalam “special case” code yang jarang dieksekusi • Control Flow tidak dapat diprediksi secara akurat dalamblack-box testing. • Type error dapat terjadi dimana saja !

  10. Kelebihan white box testing • Semua jalur (path) yang independen / terpisah dapat dites setidaknya sekali tes. • Semua logika keputusan dapat dites dengan jalur yang salah dan atau jalur yang benar. • Semua loop dapat dites terhadap batasannya dan ikatan operasionalnya. • Semua struktur internal data dapat dites untuk memastikan validitasnya.

  11. Teknik White Box Testing • Cakupan pernyataan, cabang dan jalur menggunakan alur logika yang sering disebut flow graph.

  12. Flow Graph (alurLogika) • Nodes (titik), mewakili pernyataan (atau sub program) yang akan ditinjau saat eksekusi program. • Edges (anakpanah), mewakilijaluralurlogika program untukmenghubungkansatupernyataan (atau sub program) dengan yang lainnya. • Branch nodes (titikcabang), titik-titik yang mempunyailebihdarisatuanakpanahkeluaran. • Branch edges (anakpanahcabang), anakpanah yang keluardarisuatucabang • Paths (jalur), jalur yang mungkinuntukbergerakdarisatutitikkelainnyasejalandengankeberadaanarahanakpanah.

  13. Cakupanpernyataan

  14. Cakupancabang

  15. Cakupanjalur

  16. Perbedaancakupanpernyataan, cabangdanjalur • Contohcakupancabang 100 % namuncakupanjalurtidak 100 %.

  17. Perbedaancakupanpernyataan, cabangdanjalur • Contoh anak panah cabang 100 % namun cakupan jalur tidak 100 %.

  18. Basis Path Testing Proposed by Tom McCabe Disebutjuga branch testing ataucontrol-flow testing Hadirdalam 2 bentuk : • Zero Path: Jalur penghubung yang tidak penting atau jalur pintas yang ada pada suatu sistem. • One Path: Jalurpenghubung yang pentingatauberupa proses padasuatusistem.

  19. Basis Path Testing • Bertujuanuntukmelakukanpengukurankompleksitaslogikaldarirancanganprosedurdanmenggunakannyasebagai guide untukmenentukan set dari path yang dieksekusi • Basic set akandieksekusiolehsetiapstatementpaling tidaksekali • Isu - Flow Graph Notation - CyclomaticComplexity • Deriving Test Cases • Graph Matrices

  20. Notasi flow graph

  21. Notasi flow graph Padaflow graph: • Panahdisebut edges menggambarkan flow of control • Lingkarandisebut nodes, menggambarkansatuataulebihaksi • Area yang dibatasioleh edges dan nodes diebut regions • Predicate Nodes adalah nodes yang mengandungkondisi Setiapprocedural design dapatditranslasikanke flow graph notation

  22. Cyclomatic Complexity • Memberikan ukuran kuantitatif dari kompleksitas logikal. • Nilainya memberikan jumlah dari independent path dalam basis set dan upper bound dari jumlah test untuk memastikan bahwa setiapstatement dieksekusi paling tidak satu kali. • Independent path adalah setiap path padaprogram yang mengenalkan paling tidak satu set baru statement yang sedang diproses atau kondisi baru (mis. Edge baru)

  23. Flow graph untukcyclomatic complexity

  24. Jalurindependenadalahtiapjalurpada program yang memperlihatkan 1 kelompokbarudaripernyataan proses ataukondisibaru. [Region / Complexity] V(G) = E (edges) – N (nodes) + 2 V(G) = 11 – 9 + 2 = 4 V(G) = P (predicate node) + 1 V(G) = 3 + 1 = 4 Berdasarkan urutan alurnya, didapatkan suatu kelompok basis flow graph : - Jalur 1 : 1–11 - Jalur 2 : 1-2-3-4-5-10-1-11 - Jalur 3 : 1-2-3-6-7-9-10-1-11 - Jalur4 : 1-2-3-6-8-9-10-1-11

  25. Tahapan test case dengancyclomatic complexity • Gunakandisainataukodesebagaidasar, gambarlahflow graph • Berdasarkanflow graph, tentukancyclomatic complexity • Tentukankelompok basis darijalurindependensecara linier • Siapkantest cases yang akanmelakukaneksekusidaritiapjalurdalamkelompokbasis #Note:Beberapa path mungkinhanyadapatdieksekusisbgbagiandari test yang lain.

  26. Matriks graph

  27. Matriks Graph • Dapatmengotomatisasiturunandari flow graph danmenentukan set dari basis path • Graph matrix: • Adalahbujursangkardengan #sides samadengan #nodes • Barisdankolommenggambarkannodes • Isi matriksmenggambarkanedges • Gunakannilai 1 untukmenghitungcyclomaticcomplexity • Untuksetiapbaris, jumlahkannilaikolomdankurangkandengan1 • Jumlahkantotalnyadantambahkandgn 1 = CC

  28. Matriks Graph • Link dapat diberikan bobot, sehingga dapat menentukan: • Probabilitas bahwa sebuah link (edge) akan dieksekusi • Waktu proses yang dihabiskan selama mengunjungi sebuah link • Memory dan resource yang dibutuhkan selama mengunjungi sebuah link

  29. SEKIAN danTerimakasih • Referensi : http://staf.cs.ui.ac.id/WebKuliah/TPL/Sotfware%20Testing.pdf Romeo, 2003, Testing danImplementasiSistem, Surabaya, STIKOM.

  30. tugas • JelaskandansertakancontohControl structure testing meliputi: • Testing kondisi(Condition Testing) • Testing alur data (Data Flow Testing) • Testing loop (Loop Testing) Kirim ke email rahmad_mosa@yahoo.com paling lambat tanggal 6 November 2012

More Related