• Tidak ada hasil yang ditemukan

LAPORAN MAKALAH. Pengujian White Box Testing. Software Quality And Testing A Anggota Kelompok:

N/A
N/A
Protected

Academic year: 2022

Membagikan "LAPORAN MAKALAH. Pengujian White Box Testing. Software Quality And Testing A Anggota Kelompok:"

Copied!
10
0
0

Teks penuh

(1)

LAPORAN MAKALAH 

Pengujian White­Box Testing 

 

 

 

   

Software Quality And Testing  A11.4805 

 

Anggota Kelompok:  

Luqman Fauzi (A11.2012.07075)   Alvian Yudha P. (A11.2012.07112) 

Aris Mulyasani (A11.2012.07113)   

(2)

A. Sample Code 

Berikut adalah   ​sample code yang digunakan untuk melakukan pengujian dengan        metode ​white­box testing

 

(3)

B. Tujuan Penulisan Dokumen 

1. Melakukan pengujian menggunakan dua metode ​white­box testing​, yaitu: 

a. Basis Path  b. Graph Matrix 

2. Dari dua metode tersebut, akan dijelaskan prosedur, hasil, dan pembahasan        terkait pengujian dari masing­masing metode. 

 

C. Landasan Teori 

a.   Basis Path       

Basis Path Testing adalah sebuah metode pengujian terstruktur yang          melibatkan  ​source code dari program untuk menemukan setiap kemungkinan        jalur/​path yang dapat dieksekusi. Sehingga untuk pengujian masing­masing ​path        dengan sebanyak mungkin kemungkinan yang ada untuk mencakup        masing­masing ​test case. Sehingga cara ini adalah pilihan terbaik untuk menggali        semua kemungkinan kesalahan di dalam kode program [2]. Pada gambar di        bawah ini merupakan diagram alur dari pengujian berbasis path testing terhadap       

(4)

b.   Graph Matrix 

Graph Matrix merupakan metode yang digunakan untuk membantu uji coba        basis path atau struktur data.         ​Graph Matrix adalah matrik persegi empat yang        mempunyai ukuran yang sama dengan jumlah            ​node pada ​flowgraph   .  Masing­masing baris dan kolom mempunyai hubungan dengan       ​node yang telah      ditentukan dan masukan data       ​matrix berhubungan dengan hubungan (​edge       ) antar    node​ [1]. 

 

Contoh sederhana penerapan graph matric dapat digambarkan sebagai berikut : 

  Hubungan bobot menyediakan tambahan informasi tentang aliran kontrol.       

Secara sederhana, bobot edge dapat diberi nilai 1 jika terdapat hubungan antara        node atau nilai 0 jika tidak terdapat hubungan. Dapat juga hubungan bobot diberi        tanda dengan ketentuan sebagai berikut: 

1. Kemungkinan link (edge) dikerjakan 

2. Waktu yang digunakan untuk proses selama traversal dari link  3. Memori yang diperlukan selama traversal link 

4. Sumber daya yang diperlukan selama traversal link. 

       

(5)

D. Proses Pengujian

  a. Basis Path 

Proses di dalam metode ​basis path​ meliputi beberapa langkah, sebagai berikut: 

1. Membuat Control Flow Graph 

   

Keterangan: 

1. Variable declaration ((x, y, w, A, B, theta, phi, r)  2. Function start­point & values input (x, y, w, A, B)  3. Kondisi 1 (x > 0) 

4. Kondisi 2 (x < 0 & y ≥ 0)  5. Kondisi 3 (x < 0 & y < 0)  6. Kondisi 4 (x = 0 & y = 0)  7. Kondisi 5 (x = 0 & y < 0)  8. Kondisi 6 (x = 0 & y > 0)  9. Eksekusi kondisi 1 

(6)

11. Eksekusi kondisi 3  12. Eksekusi kondisi 4  13. Eksekusi kondisi 5  14. Eksekusi kondisi 6 

15. Output  hasil berdasarkan eksekusi pada kondisi (print­out nilai a & b)  16. Function end­point 

 

2. Menentukan nilai Cyclomatic Complexity 

Dari  ​control flow graph       ​di atas, maka dapat dihitung nilai         ​cyclomatic  complexity​ sebagai berikut: 

Model V(G) = ​edges​ ­ ​nodes​ + 2(p) 

= 20 ­ 16 + 2(1) 

= 4 + 2 

= ​6 

Maka diperoleh nilai cyclomatic complexity adalah ​6  Keterangan:  

­ edges​:  komponen yang menghubungkan masing­masing node 

­ node​: jumlah kondisi atau       ​state terhadap setiap kemungkinan alur          kerja program dalam bentuk ​basis path​

 

3. Memilih jalur basis set 

Untuk menentukan jalur basis set yang dimiliki, maka diperlukan       ​graph  matrix  ​yang diperoleh dari setiap node dan keterhubungan antar        masing­masing node menggunakan     ​matrix persegi empat. Penjelasan dan          perhitungan bagian ini akan dijelaskan pada bagian       ​graph matrix.  ​Dari ​graph  matrix ​tersebut diperoleh sebanyak 6 basis set. Bagian ini dijelaskan secara        lebih rinci pada bagian ‘​Graph Matrix​’ 

 

4. Menghasilkan test case 

Apabila sudah diperoleh jumlah dari basis set, maka langkah selanjutnya        adalah merancang   ​test case untuk masing­masing basis path, yaitu sejumlah        6 test case. Masing­masing test case merepresentasikan setiap basis path       

(7)

yang ada, dengan masing­masing kondisi /       ​case yang berbeda. Penjelasan        terkait proses ini dijelaskan pada sub­bab ‘Hasil’. 

 

b. Graph Matrix 

Dibawah ini merupakan     ​Graph Matrix dari proses ​flow graph yang diperoleh                pada proses sebelumnya. Apabila sebuah node dapat terhubung dengan node        lainnya maka matrix bernilai 1, apabila tidak dapat terhubung maka bernilai  0. 

 

Node   Connected Node   

Σ(i) 

1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16 

1  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1 ­ 1 = ​0 

2  0  0  0  0  0  0  0  0  0  0  6 ­ 1 = ​5 

3  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1 ­ 1 = ​0 

4  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1 ­ 1 = ​0 

5  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1 ­ 1 = ​0 

6  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1 ­ 1 = ​0 

7  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1 ­ 1 = ​0 

8  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1 ­ 1 = ​0 

9  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1 ­ 1 = ​0 

10  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1 ­ 1 = ​0 

11  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1 ­ 1 = ​0 

12  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1 ­ 1 = ​0 

13  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1 ­ 1 = ​0 

14  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1 ­ 1 = ​0 

15  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1 ­ 1 = ​0 

16  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0 ­ 0 = ​0 

JUMLAH BASIS SET ( ​Σ(i) + 1 ):  5 ​+ 1 = ​6 

(8)

Dari hasil perhitungan di atas, maka dapat dihitung jumlah basis set yang        terbentuk adalah sebanyak ​6​ basis set. 

 

E. Hasil 

Dari kedua metode dan proses pengujian tersebut, maka diperoleh beberapa       ​test  case berdasarkan jumlah basis set yang didapatkan pada tahap graph matrix. Dimana        testcase ini merupakan representasi dari beberapa kemungkinan terkait eksekusi        program pada beberapa kondisi / ​case​

 

Paths  Nodes  Test Cases 

Path 1  1 ­ 2 ­ 3 ­ 9 ­ 15 ­ 16  Jika node 3 bernilai benar ( x < 0 → TRUE )  

Path 2  1 ­ 2 ­ 4 ­ 10 ­ 15 ­ 16  Jika node 4: bernilai benar ( x < 0 AND y ≥ 0 → TRUE )  Path 3  1 ­ 2 ­ 5 ­ 11 ­ 15 ­ 16  Jika node 5: bernilai benar ( x < 0 AND y < 0 → TRUE )  Path 4  1 ­ 2 ­ 6 ­ 12 ­ 15 ­ 16  Jika node 6: bernilai benar ( x = 0 AND y = 0 → TRUE )  Path 5  1 ­ 2 ­ 7 ­ 13 ­ 15 ­ 16  Jika node 7: bernilai benar ( x = 0 AND y < 0 → TRUE )  Path 6  1 ­ 2 ­ 8 ­ 14 ­ 15 ­ 16  Jika node 8: bernilai benar( x = 0 AND y > 0 → TRUE ) 

 

Paths  Flow Graph 

   Path 1  

    

   Path 2 

 

(9)

      Path 3 

    

   Path 4 

    

   Path 5 

    

   Path 6 

   

Pada tabel di atas merupakan hasil test case yang didapatkan dari proses       ​basis  path  ​dan  ​graph matrix. Masing­masing test case memiliki kondisi / case yang        berbeda­beda. Dan dapat digunakan di dalam pengujian eksekusi program dalam        realitanya. 

 

(10)

F. Pembahasan 

Dari hasil pengujian di atas diperoleh 6       ​test case  ​, dimana masing­masing     ​test  case merepresentasikan masing­masing kondisi yang mungkin terjadi pada eksekusi        program yang ada. Pada masing­masing test case menguji pada nilai input yang        memenuhi kondisi (bernilai TRUE), karena apabila suatu kondisi tidak terpenuhi        maka akan berlaih pada kondisi yang lainnya. Sehingga dari pengujian tersebut tidak        mungkin apabila nilai input yang ada tidak memenuhi kondisi, karena masing­masing        kondisi sudah mencover setiap kemungkinan yang ada berdasarkan nilai masukan        program. Kemudian komputasi di dalam masing­masing kondisi dilakukan        sedemikian rupa sesuai apa yang terdeklarasi di dalam setiap blok kondisi.       

Berdasarkan hasil komputasi tersebut diperoleh nilai a dan nilai b, hingga akhirnya        dieksekusi pada bagian akhir function dieksekusi (mencetak /       ​print­out nilai a dan        nilai b). 

 

G. Kesimpulan 

Pengujian perangkat lunak pada ​white­box ​menggunakan metode ​basis path

               

dan ​graph matrix memiliki tujuan untuk menghasilkan ​test case yang kemudian dapat                  digunakan sebagai acuan dalam menguji sebuah program, baik dari segi alur, logika,        atau algoritma. Sehingga dari pengujian tersebut dapat dihasilkan program yang dapat        divalidasi kualitasnya, sehingga implementasinya pada perangkat lunak juga        menghasilkan produk perangkat lunak yang teruji dan mudah dirawat secara jangka        panjang. 

 

 

   

Referensi

Dokumen terkait