dan kita akan membahas apa itu?
- White box testing
- flowgraph dan cakupan-cakupannya
- Testing yang diturunkan dari “pengetahuan” tentang struktur dan implementasi program
- Nama lain : glass box, structural, clear box atau open box testing
- Harus tahu secara detail tetang perangkat lunak yang akan di uji.
- Untuk pengujian yang lengkap maka suatu perangkat lunak harus diuji dengan white box dan black box testing
- Unit Testing
- Integration testing
- Regression Testing
- Pembuatan testcase didasarkan pada alur logika
- Alur logika : cara dimana suatu bagian dari program tertentu dieksekusi saat menjalankan suatu program.
- Alur logika dapat direpresentasikan dengan menggunakan flowgraph
- Menguji setiap jalur indepenent
- Menguji keputusan logic (true atau falsa)
- Menguji Loops dan batasannya.
- Menguji Data Struktur internalnya
FlowGraph
- Adalah gabungan dari sebuah titik (nodes) dan garis (Edges)
- Vertex adalah sebuah node
- Edges adalah sebuah garis yang menghubungkan vertex
- • Branch nodes (titik cabang) Ã titik-titik yang mempunyai lebih dari satu anak panah keluaran.
- Branch edges (anak panah cabang) Ã anak panah yang keluar dari suatu titik cabang
- Paths (jalur) Ã jalur yang mungkin untuk bergerak dari satu titik ke lainnya sejalan dengan keberadaan arah anak panah.
- Eksekusi suatu test case menyebabkan program untuk mengeksekusi pernyataan-pernyataan tertentu, yang berkaitan dengan jalur tertentu, sebagaimana tergambar pada flow graph.
- Cakupan cabang, pernyataan dan jalur dibentuk dari eksekusi jalur program yang berkaitan dengan peninjauan titik, anak panah, dan jalur dalam flow graph
Cakupan Pernyataan
- Ditentukan dengan menilai proporsi dari pernyataan-pernyataan yang ditinjau oleh sekumpulan test cases yang ditentukan.
- Cakupan pernyataan 100% jika tiap pernyataan pada program ditinjau setidaknya minimal sekali tes
- Cakupan pernyataan berkaitan dengan nodes dari suatu flowgraph
Contoh:
- Pada contoh gambar flow graph di samping terdapat 10 titik.
- Misal suatu jalur eksekusi program melewati titik-titik A, B, D, H, K.
- Berarti ada 5 titik dari 10 titik yang dikunjungi, maka cakupan pernyataan sebesar 50%.
Cakupan Cabang
- Cakupan cabang ditentukan dengan menilai proporsi dari cabang keputusan yang diuji oleh sekumpulan test cases yang telah ditentukan.
- Cakupan cabang 100% adalah bilamana tiap cabang keputusan pada program ditinjau setidaknya minimal sekali tes.
- Cakupan cabang berkaitan dengan peninjauan anak panah cabang (branch edges) dari flow graph.
Contoh:
- Pada contoh gambar flow graph di samping, terdapat 6 anak panah cabang.
- Mis. suatu jalur eksekusi program melewati titik-titik A, B, D, H, K,
Cakupan Jalur
- Cakupan jalur ditentukan dengan menilai proporsi eksekusi jalur program yang diuji oleh sekumpulan test cases yang telah ditentukan.
- Cakupan jalur 100 % adalah bilamana tiap jalur pada program dikunjungi setidaknya minimal sekali tes.
- Cakupan jalur berkaitan dengan peninjauan jalur sepanjang flow graph.
Contoh:
- Berdasarkan contoh flow graph di atas, terdapat 4 jalur.
- Bila suatu eksekusi jalur pada program melalui titik- titik A, B, D, H, K, maka eksekusi tersebut meninjau 1 dari 4 jalur yang ada, jadi cakupannya sebesar 25%.
Desain Cakupan Test
Tahap-tahap mendesign cakupan test :
- Harus bisa membaca source code untuk membuat Flow Graph
- Mengidentifikasi jalur tes untuk mencapai pemenuhan tes berdasarkan Flow Graph
- Mengevaluasi kondisi tes
- Member nilai masukan
Basic Path Testing
Ada 2 bentuk :
Ada 2 bentuk :
- Zero path (Jalur penghubung yang tidak penting)
- One path (Jalur penghubung penting dari Sistem)
Identifikasi didasarkan pada jalur, struktur atau koneksi yang ada dari suatu sistem (branch testing), karena cabang-cabang dari kode atau fungsi logika diidentifikasi dan di tes
Konsep utama basis path :
•Tiap basis path harus diidentifikasi, tidak boleh ada yang terabaikan (setidaknya di tes 1 kali).
•Kombinasi dan permutasi dari suatu basis path tidak perlu di tes.
Cyclomatic Complexity
Jalur independen adalah tiap jalur pada program yang memperlihatkan 1 kelompok baru dari pernyataan proses atau kondisi baru.
Graph Matrix
- Pengukuran Software yang memberikan pengukuran kuantitatif dari kompleksitas logika program.
- Konteks metode basis path testing , nilai yang dihitung.
-
Secara matematis dituliskan :
- V(G) = E (edges) – N (Nodes) + 2
- V(G) = P (Predicate Node) + 1
- V(G) = E (edges) – N (Nodes) + 2
- Catatan : beberapa jalur mungkin hanya dapat di eksekusi sebagai bagian dari tes yang lain.
- Rekomendasi nilai V(G) jangan sampai melebihi nilai 10
Jalur independen adalah tiap jalur pada program yang memperlihatkan 1 kelompok baru dari pernyataan proses atau kondisi baru.
[Region
/ Complexity] V(G) = E (edges) – N (nodes) + 2
Graph Matrix
Sumber referensi:
http://salvation3.wordpress.com/2011/10/12/define-test-case-white-box-testing-flowgraph-and-cyclomatic-complexity-2/
Tidak ada komentar:
Posting Komentar