Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
Diterbitkan olehRatna Atmadja Telah diubah "6 tahun yang lalu
1
Metode Pengujian Perangkat Lunak (White Box)
Pertemuan 12 Metode Pengujian Perangkat Lunak (White Box) Cont….. Febriyanno Suryana, S.Kom, MM SI -2013
2
2. Pengujian Kondisi Merupakan metode/teknik desain test case yang menggunakan kondisi logis yang ada pada suatu program. Kondisi dibagi atas : Kondisi sederhana Terdiri dari : - satu variabel boolean - persamaan relasional - dapat didahului dengan operator NOT Kondisi gabungan Terdiri dari dua atau lebih kondisi sederhana, operator boolean, dan tanda kurung.
3
Pengujian Kondisi... Dengan demikian, tipe2 komponen yg mungkin di dlm suatu kondisi meliputi : Operator boolean Sebuah variabel boolean Sepasang tanda kurung boolean (yang mengelilingi suatu kondisi gabungan dan kondisi sederhana) Sebuah operator operasional atau sebuah persamaan aritmatik. Teknik pengujian fokus pada masing-masing kondisi yg ada dlm program.
4
Pengujian Kondisi... Operator : simbol khusus untuk mengoperasikan suatu nilai data (operand). Operator Aritmatik : +. -, *, /, ^ Operator Relasional : >, <, =, >=, <=, <> Operator Boolean/Logika : AND atau “&” OR atau “|” NOT atau “-”
5
Pengujian Kondisi... Strategi pengujian kondisi Pengujian cabang
Merupakan strategi pengujian kondisi yang paling sederhana. Untuk suatu kondisi gabungan, cabang2 true (benar) dan false (salah) dan setiap kondisi sederhana yang ada perlu di eksekusi paling tidak 1 (satu) kali. Contoh : If A & B then C Else then D End if Test Case : A = .t. B = .t. A = .f. Cabang true (benar) (C) Cabang false (salah) (D)
6
Pengujian Kondisi... Contoh program :
01 procedure TForm1.Button1Click(Sender: TObject); 02 var nilai : integer; 03 hasil : string; begin 05 nilai:=strtoint(edit1.Text); 06 if nilai < 60 then 07 hasil:= 'Tidak lulus' 08 else 09 hasil:='Lulus'; 10 edit2.Text:= hasil; end if end;
7
Pengujian Kondisi...
8
Pengujian Kondisi... Pengujian domain
Pengujian domain membutuhkan 3 atau 4 pengujian untuk sebuah persamaan relasional, karena persamaan relasional mengambil bentuk : dimana : E1, E2 = persamaan aritmatik Maka diperlukan 3 pengujian untuk membuat : Nilai E1 > E2 Nilai E1 = E2 Nilai E1 < E2 secara berurutan E1 (operator Aritmatik) E2
9
Pengujian Kondisi... Mendeteksi kesalahan :
Bila operator relasional salah dan E1, E2 benar, maka ke-3 pengujian diatas menjamin pendeteksian kesalahan pada operator relasional. Contoh : E1=A, E2=7 Catatan : Persamaan Aritmatik/ E1 adalah operand dengan nilai A E2 adalah operand dengan nilai 7 Operand adalah nilai suatu data Test Case: A = 10 nilai E1 > E2 A = 7 nilai E1 = E2 A = 4 nilai E1 < E2 if A > 7 then B else C endif
10
Pengujian Kondisi... Untuk mendeteksi kesalahan pada E1 dan E2,
maka test case yg membuat nilai ( E1 > E2 ) dan ( E1< E2 ) harus dibuat perbedaan harga keduanya (E1,E2) sekecil mungkin. Contoh : Test Case: A = 8 nilai E1 > E2 A = 7 nilai E1 = E2 A = 6 nilai E1 < E2 if A > 7 then B else C endif
11
Pengujian Kondisi... 1. Tabel Operator NOT ("-") A NOT A T F
2. Tabel Operator OR ("|") A B A|B T F
12
Pengujian Kondisi... 3. Tabel Operator AND ("&") A B A&B T F
13
Pengujian Kondisi... Persamaan boolean dg n variabel
Semua 2n pengujian yg mungkin (dimana n>0) perlu dilakukan. Strategi ini dpt mendeteksi kesalahan : variabel, operator dan kesalahan tanda kurung boolean. (catt: tetapi strategi ini praktis untuk n yg kecil) Pada contoh diatas terdapat 3 variabel yaitu (A,B dan C), sehingga diperlukan 23 = 8 test case Contoh: Test case: A = .t. , B = .t. , C = .t. A = .t. , B = .t. , C = .f. A = .t. , B = .f. , C = .t. A = .t. , B = .f. , C = .f. A = .f. , B = .t. , C = .t. A = .f. , B = .t. , C = .f. A = .f. , B = .f. , C = .t. A = .f. , B = .f. , C = .f. if (A & B ) | C then D else E endif
14
Latihan Perhatikan listing program berikut :
Dim hasil as int, H_true as int ; Dim A as int, B as int, C as int ; Hasil = (A&B)|C H_true = 1 If (A&B)|C if hasil = H_true print “true” berapa kali ? else print “false” berapa kali ? end if End if Dari test case yang dilakukan, berapa kali jalur yang masuk ke “true” dan false”….? A = val(text1.text) B = val(text2.text) C = val(text3.text)
15
Latihan... Data input : A = 1 B C Catatan : Nilai true = 1
Catatan : Nilai true = 1 Nilai false = 0
16
Latihan... Pembahasan : 1 & = | ---> 5 x jalur ---> 3 x jalur
AND Hasil "AND" OR Hasil "AND" dan "OR" 1 & = | Nilai 1 = 5 ---> 5 x jalur Nilai 0 = 3 ---> 3 x jalur
17
Pengujian Kondisi... 3. Pengujian BRO (Branch and Relational Operator)
Strategi pengujian BRO menjamin pendeteksian kesalahan cabang dan operator relasional, dg kondisi bahwa; semua variabel boolean dan operator relasional pada kondisi itu terjadi hanya sekali dan tidak memiliki variabel umum. Strategi BRO menggunakan batasan kondisi bagi suatu kondisi. Misal: suatu kondisi-C, dimana batasan kondisi untuk kondisi-C dgn n kondisi sederhana ditentukan sebagai (D1, D2, … , Dn), dimana Di (0 < i< = n) merupakan simbol yg menentukan batasan pd hasil akhir dari kondisi sederhana ke-i dlm kondisi-C.
18
Pengujian Kondisi... Catatan:
Batasan-kondisi-D untuk kondisi-C dikatakan dipenuhi oleh eksekusi dari kondisi-C bila selama eksekusi dari kondisi-C, hasil akhir dari masing-2 kondisi sederhana di dalam kondisi-C memenuhi batasan yg bersesuaian di dlm kondisi-C. Untuk variabel-boolean, kita menentukan batasan pd hasil akhir variabel-boolean yg menyatakan bahwa variabel-boolean harus; true (.t.) atau false (.f.). Begitu juga untuk persamaan relasional, dimana simbol: >,=,< digunakan untuk menentukan batasan pd hasil akhir persamaan relasional.
19
Pengujian Kondisi... Contoh 1: Kondisi C1 : B1 & B2 Dimana: B1 dan B2 adalah: variabel boolean Batasan kondisi untuk C1 adalah bentuk: ( D1 , D2 ) Dimana masing-2 dari D1 dan D2 adalah : .t. atau .f. Strategi pengujian BRO mengharuskan himpunan batasan: [ (t,t), (t,f), (f,t) ] dicakup oleh eksekusi C1
20
Pengujian Kondisi... kasus: Batasan kondisi: if A & B ( D1 , D2 )
Himpunan batasan: [ (t,t), (t,f), (f,t) ] Test case: A = .t. , B = .t. A = .t. , B = .f. A = .f. , B = .t. if A & B then C else D endif
21
Pengujian Kondisi... Batasan kondisi C2 adalah bentuk: ( D1 , D2 )
Contoh 2: Kondisi C2 : B1 & ( E1 = E2 ) Dimana: B1 adalah: variabel boolean E1, E2 adalah: persamaan relasi Batasan kondisi C2 adalah bentuk: ( D1 , D2 ) dimana: D1 adalah: .t. atau .f. D2 adalah: > , = , < Himpunan batasan: [ (t,t), (t,f), (f,t) ] dimodifikasi menjadi: [ (t,=), (t,>), (t,<), (f,=) ]
22
Pengujian Kondisi... kasus: Batasan kondisi: if A & ( B = 5 )
( D1 , D2 ) Himpunan batasan: [ (t,=), (t,>), (t,<), (f,=) ] Test case: A = .t. , B = 5 A = .t. , B = 8 A = .t. , B = 3 A = .f. , B = 5 if A & ( B = 5 ) then C else D endif
23
Kondisi C3 : ( E1 > E2 ) & ( E3 = E4 )
Pengujian Kondisi... Contoh 3: Kondisi C3 : ( E1 > E2 ) & ( E3 = E4 ) Dimana: E1, E2, E3, E4 adalah: persamaan relasi Batasan kondisi C3 adalah bentuk: ( D1 , D2 ) dimana: D1 adalah: > , = , < D2 adalah: > , = , < Himpunan batasan: [ (t,t), (t,f), (f,t) ] dimodifikasi menjadi: [ (>,=), (>,>), (>,<), (=,=), (<,=) ]
24
Pengujian Kondisi... kasus: Batasan kondisi:
( D1 , D2 ) Himpunan batasan: [ (>,=), (>,>), (>,<), (=,=), (<,=) ] Test case: A = 9 , B = 8 A = 12 , B = 10 A = 7 , B = 3 A = 5 , B = 8 A = 2 , B = 8 if ( A > 5 ) & ( B = 8 ) then C else D endif
25
Latihan Perhatikan kasus berikut :
Kasus : Program Aplikasi Penggajian Perhatikan kasus berikut : If ( MK > 10 ) & ( UM < 50 ) l ( GOL = 4 ) then TK = berapa kali ? else TK = berapa kali ? endif Keterangan: TK = Tunjangan Keluarga MK = Masa Kerja (dalam tahun) UM = Umur (dalam tahun) GOL = Golongan (1,2,3,4,5)
26
Latihan... Langkah – langkah : 1.Tentukan batasan kondisi:
Pertanyaan: Rancanglah maksimal test case pada pengujian kondisi IF diatas dengan strategi Pengujian BRO dan tentukan berapa jalur yang masuk pada kondisi “true” dan “false” Jawab: Langkah – langkah : 1.Tentukan batasan kondisi: ( D1 , D2, D3 ) dimana D1 , D2 , D3 isinya : >, =, < If ( MK > 10 ) & ( UM < 50 ) l ( GOL = 4 ) D1 D D3
27
If ( MK > 10 ) & ( UM < 50 ) l ( GOL = 4 )
D1 D D3 Latihan... Pembahasan : D1 D2 D3 1 T 2 F 3 4 5 6 7 8 Himpunan Batasan (>,<,=) ( >,<,>) (>,<,<) (=,<,>) (<,<,<) (=,<,<) (<,<,>) T T T T T F ……………. ……………. ……………. ……………. Test case setelah dimodifikasi ?
28
Latihan... Pembahasan : 2. Tentukan himpunan batasan:
[ (>,<,=), (>,<,>), (>,<,<), (>,>,=), (>,=,=), (>,>,>), (>,>,<), (>,=,>), (>,=,<) (=,<,=), (<,<,=), (=,<,>), (=,<,<), (<,<,>), (<,<,<) (=,>,=), (=,=,=), (<,>,=), (<,=,=) dari himpunan batasan diatas diperoleh jumlah sebanyak 19. dengan demikian jumlah test case adalah sebanyak 19 kali
29
Latihan... Pembahasan : T F D1 & D2 Hsl1 | D3 Hsl2 1 2 3 4 5 6 7 8 9
D1 & D2 Hsl1 | D3 Hsl2 1 T 2 F 3 4 5 6 7 8 9 10
30
Latihan... Pembahasan : F T D1 & D2 Hsl1 | D3 Hsl2 11 12 13 14 15 16
D1 & D2 Hsl1 | D3 Hsl2 11 F T 12 13 14 15 16 17 18 19 Nilai TRUE = 11 ---> 11 x jalur Nilai FALSE = 8 ---> 8 x jalur
31
Pengujian Kondisi... No. MK UM GOL 1. 12 40 4 2. 15 42 5 3. 13 45 2 4.
55 5. 17 50 6. 18 54 . 19. 8 Test case:
32
End Session
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.