DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... ·...
Transcript of DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... ·...
![Page 1: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/1.jpg)
DASAR-DASAR PENGUJIAN PERANGKAT LUNAK
![Page 2: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/2.jpg)
Proses Testing• System Testing
– Pengujian terhadap integrasi sub-system, yaituketerhubungan antar sub-system
• Acceptance Testing– Pengujian terakhirs sebelum sistem dipakai oleh user. – Melibatkan pengujian dengan data dari pengguna
sistem.– Biasa dikenal sebagai “alpha test” (“beta test” untuk
software komersial, dimana pengujian dilakukan olehpotensial customer)
![Page 3: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/3.jpg)
Proses Testing
UnitTesting
ModuleTesting
Sub-systemTesting
SystemTesting
AcceptanceTesting
Component Testing Integration TestingUserTesting
![Page 4: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/4.jpg)
The testing process
Component testing Pengujian komponen-komponen programBiasanya dilakukan oleh component developer (kecuali untuk system kritis)
Integration testingPengujian kelompok komponen-komponen yang terintegrasi untuk membentuk sub-system ataupun systemDialakukan oleh tim penguji yang independentPengujian berdasarkan spesifikasi sistem
![Page 5: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/5.jpg)
Rencana PengujianProses testing
Deskripsi fase-fase utama dalam pengujianPelacakan Kebutuhan
Semua kebutuhan user diuji secara individuItem yg diuji
Menspesifikasi komponen sistem yang diujiJadual TestingProsedur Pencatatan Hasil dan ProsedurKebutuhan akan Hardware dan SoftwareKendala-kendala
Mis: kekuranga staff, alat, waktu dll.
![Page 6: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/6.jpg)
Hubungan antara rencana pengujian danproses pengembangan system
SpesifikasiKebutuhan
SpesifikasiSystem
PerancanganSystem
DetailPerancangan
AcceptanceTest plan
System IntegrationTest plan
Sub-System IntegrationTest plan
Module andUnit code and
test
Acceptancetest
System Integration
test
Sub-System Integration
test
Service
![Page 7: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/7.jpg)
Failures, FaultsFailure: output yang tidak benar/tidak sesuaiketika sistem dijalankanFault: kesalahan dalam source code yang mungkin menimbulkan failure ketika code ygfault tsb dijalankan
Failure yang merusak sistem dataCorruptingFailure tidak merusak dataNon-corruptingSistem tidak dapat memperbaiki secara otomatisUnrecoverableSistem dapat memperbaiki secara otomatisRecoverableMuncul untuk semua inputPermanentMuncul untuk input tertentuTransientDeskripsiFailure Class
![Page 8: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/8.jpg)
1: input A,B
2: A>0?
3: C :=0 4: C := A*B
5: B>0?
6: X := C*(A+2*A) 7: X := A+B
8: output X
Contoh: Faults, Errors, and Failures
● Suppose node 6 should beX:= C*(A+2*B)• Failure-less fault:
» executing path (1,2,4,5,7,8) will not reveal this fault because 6 is not executed
» nor will executing path (1,2,3,5,6,8) because C = 0
● Need to make sure proper test cases are selected• the definitions of C at
nodes 3 and 4 both affect the use of C at node 6
» executing path (1,2,4,5,6,8) will reveal the failure,but only if B /= 0
![Page 9: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/9.jpg)
Hanya test yang lengkap yg dapatmeyakinkan sistem terbebas dari kesalahan, tetapi hal ini sangat sulit dilakukan.Prioritas dilakukan terhadap pengujiankemampuan sistem, bukan masing-masingkomponennya.Pengujian untuk situasi yg tipikal lebihpenting dibandingkan pengujian terhadapnilai batas.
Prioritas Testing
![Page 10: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/10.jpg)
Test data: Input yang yang direncankan digunakan oleh sistem.Test cases: Input yang digunakanuntuk menguji sistem dan memprediksioutput dari input jika sistem beroperasisesuai dengan spesifikasi.
Test data dan kasus test
![Page 11: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/11.jpg)
Proses defect testing
Design testcases
Prepare testdata
Run programwith test data
Compare resultsto test cases
Testcases
Testdata
Testresults
Testreports
![Page 12: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/12.jpg)
Disebut juga white-box testingPenentuan test case disesuaikandengan struktur sistem. Knowledge program digunakan untukmengidentifikasi test case tambahan.Tujuannya untuk menguji semuastatement program (debug).
Structural testing
![Page 13: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/13.jpg)
White-box testing
Componentcode
Testoutputs
Test data
DerivesTests
![Page 14: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/14.jpg)
Path testing
Tujuannya meyakinkan bahwa himpunan test case akan menguji setiap path pada suatuprogram paling sedikit satu kali. Titik awal untuk path testing adalah suatuprogram flow graph yang menunjukkan node-node yang menyatakan program decisions (mis.: if-then-else condition) dan busurmenyatakan alur kontrolStatements dengan conditions adalah node-node dalam flow graf.
![Page 15: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/15.jpg)
Menggambarkan alur kontrol. Setiap cabangditunjukkan oleh path yg terpisah dan loop ditunjukkan oleh arrows looping kembali keloop kondisi node.Digunakan sebagai basis untuk menghitungcyclomatic complexityCyclomatic complexity = Jumlah edges –Jumlah Node +2 Cyclomatic complexity menyatakan jumlahtest untuk menguji control statements
Program flow graphs
![Page 16: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/16.jpg)
Binary search flow graph
1
2
3
4
65
7
while bottom <= top
if (elemArray [mid] == key
(if (elemArray [mid]< key8
9
bottom > top
![Page 17: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/17.jpg)
1, 2, 3, 8, 91, 2, 3, 4, 6, 7, 21, 2, 3, 4, 5, 7, 21, 2, 3, 4, 6, 7, 2, 8, 9Test cases harus ditentukan sehinggasemua path tsb tereksekusi.
Independent paths
![Page 18: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/18.jpg)
Black-box testing
Pendekatan pengujian dimana program dianggap sebagai suatu ‘black-box’(‘kotak hitam’)Program test case berbasiskanspesifikasiTest planning dapat dimulai sejak awalproses pengembangan sistem
![Page 19: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/19.jpg)
Black-box testing
Ie
Input test data
OeOutput test results
System
Inputs causinganomalousbehaviour
Outputs which revealthe presence ofdefects
![Page 20: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/20.jpg)
Black-box testing
• Pengujian black box berusahamenemukan kesalahan dalam kategori :– Fungsi-fungsi yang tidak benar atau hilang– Kesalahan interface– Kesalahan dalam struktur data atau akses
database eksternal– Kesalahan kinerja– Inisialisasi dan kesalahan terminasi
![Page 21: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/21.jpg)
Partisi Ekivalensi (equivalensipartition)
Input data dan output hasil terdapat di klasyang berbeda yang sesuai dengan klasinputnyaMasing-masing klas equivalensi partition diprosres dimana program akan memprosesanggota klas-klas tersebut secara equivale.Test cases dipilih dari masing-masing partisi
![Page 22: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/22.jpg)
Partisi Ekivalensi (Equivalence partitioning)
System
Outputs
Invalid inputs Valid inputs
![Page 23: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/23.jpg)
Partition system inputs and outputs into ‘equivalence sets’
If input is a 5-digit integer between 10000 and 99999, equivalence partitions are <10000, 10000-99999 and > 100000
Choose test cases at the boundary of these sets
00000, 9999, 10000, 99999, 100001
Partisi Ekivalensi (Equivalence partitioning)
![Page 24: DASAR-DASAR PENGUJIAN PERANGKAT LUNAKravii.staff.gunadarma.ac.id/Downloads/files/35439/DASAR... · Microsoft PowerPoint - DASAR-DASAR PENGUJIAN PERANGKAT LUNAK.ppt Author: Widya Silfianti](https://reader035.fdocument.pub/reader035/viewer/2022062404/61274e489a3209439e03143e/html5/thumbnails/24.jpg)
Equivalence partitions
Between 10000 and 99999Less than 10000 More than 99999
999910000 50000
10000099999
Input values
Between 4 and 10Less than 4 More than 10
34 7
1110
Number of input values