PENGUJIAN PERANGKAT LUNAK
“Proses menelusuri dan mempelajari sebuah program dalam rangka menemukan kesalahan pada perangkat lunak sebelum diserahkan kepada pengguna”. (Roger S. Pressman, 7th edition).
“Proses menelusuri dan mempelajari sebuah program dalam rangka menemukan kesalahan pada perangkat lunak sebelum diserahkan kepada pengguna”. (Roger S. Pressman, 7th edition).
Sasaran pengujian pada perangkat lunak adalah(sukamto,2009):
1. Pengujian adalah proses eksekusi suatu program dengan maksud menemukan kesalahan.
2. Test case yang baik adalah test case yang memiliki probabilitas tinggi untuk menemukan kesalahan yang belum pernah ditemukan sebelumnya.
3. Pengujian yang sukses adalah pengujian yang mengungkap semua kesalahan yang belum pernah ditemukan sebelumnya
Karakteristik umum
dari pengujian perangkat lunak adalah sebagai berikut :
1. Pengujian dimulai pada level modul dan bekerja kearah integrasi pada sistem berbasiskan komputer.
2. Teknik pengujian yang berbeda sesuai dengan poin-poin yang berbeda pada waktunya.
3. Pengujian diadakan oleh software developer dan untuk proyek yang besar oleh group testing yang independent.
4. Testing dan debugging adalah aktivitas yang berbeda tetapi debugging harus diakomodasikan pada setiap strategi testing.
1. Pengujian dimulai pada level modul dan bekerja kearah integrasi pada sistem berbasiskan komputer.
2. Teknik pengujian yang berbeda sesuai dengan poin-poin yang berbeda pada waktunya.
3. Pengujian diadakan oleh software developer dan untuk proyek yang besar oleh group testing yang independent.
4. Testing dan debugging adalah aktivitas yang berbeda tetapi debugging harus diakomodasikan pada setiap strategi testing.
STRATEGI PENGUJIAN PERANGKAT LUNAK
1. Unit testing: pengujian komponen individual (modul di pemrograman prosedural atau class di OOP).
2. Integration testing: pengujian terhadap koleksi dari komponen-komponen yang bekerja bersamaan.
3. Validation testing: pengujian aplikasi terhadap kebutuhan pengguna.
4. System testing: pengujian aplikasi secara keseluruhan.
1. Unit testing: pengujian komponen individual (modul di pemrograman prosedural atau class di OOP).
2. Integration testing: pengujian terhadap koleksi dari komponen-komponen yang bekerja bersamaan.
3. Validation testing: pengujian aplikasi terhadap kebutuhan pengguna.
4. System testing: pengujian aplikasi secara keseluruhan.
WHITE BOX TESTING
Pengujian white box adalah pengujian yang didasarkan pada pengecekan terhadap detil perancangan, menggunakan struktur kontrol dari desain program secara procedural untuk membagi
pengujian ke dalam beberapa kasus pengujian.
Pengujian white box adalah pengujian yang didasarkan pada pengecekan terhadap detil perancangan, menggunakan struktur kontrol dari desain program secara procedural untuk membagi
pengujian ke dalam beberapa kasus pengujian.
Alasan pengujian White Box:
Adanya kesalahan logik dan asumsi yang tidak tepat pada setiap kemungkinan eksekusi
Ada kemungkinan alur program yang tidak tereksekusi
Ada kemungkinan kesalahan typographi yang sulit ditemukan kalau tidak dijalankan.
KELEBIHAN WHITE BOX TESTING
1. Kesalahan logika. Digunakan pada sintaks ‘if’ dan pengulangan. Dimana White Box Testing akan mendeteksi kondisi-kondisi yang tidak sesuai dan mendeteksi kapan proses pengulangan akan berhenti.
2. Ketidaksesuaian asumsi. Menampilkan asumsi yang tidak sesuai dengan kenyataan, untuk di analisa dan diperbaiki.
3. Kesalahan ketik. Mendeteksi bahasa pemrograman yang bersifat case sensitive.
1. Kesalahan logika. Digunakan pada sintaks ‘if’ dan pengulangan. Dimana White Box Testing akan mendeteksi kondisi-kondisi yang tidak sesuai dan mendeteksi kapan proses pengulangan akan berhenti.
2. Ketidaksesuaian asumsi. Menampilkan asumsi yang tidak sesuai dengan kenyataan, untuk di analisa dan diperbaiki.
3. Kesalahan ketik. Mendeteksi bahasa pemrograman yang bersifat case sensitive.
KELEMAHAN WHITE BOX TESTING
Untuk perangkat lunak yang tergolong besar, White Box Testing dianggap sebagai strategi yang tergolong boros, karena akan melibatkan sumber daya yang besar untuk melakukannya.
Kasus yang sering menggunakan
white box testing akan di uji dengan beberapa tahapan yaitu
Pengujian seluruh keputusan yang menggunakan logikal.
Pengujian keseluruh loop yang ada sesuai batasan-batasannya.
Pengujian pada struktur data yang sifatnya internal dan yang terjamin
validitasnya.
Persyaratan dalam Pengujian White Box Testing
Berikut ini terdapat beberapa persyaratan dalam pengujian white box
testing, terdiri atas:
- Medefinisikan semua
alur logika
- Membangun kasus
untuk digunakan dalam pengujian
- Mengevaluasi semua
hasil pengujian
- Melakukan pengujian secara menyeluruh
Jenis-Jenis White Box Testing
Berikut ini terdapat beberapa jenis-jenis white box testing, terdiri
atas:
- Basis Path
Metode identifikasi yang
berdasarkan pada jalur, struktur atauk oneksi yang ada dari suatu sistem ini
biasa disebut juga sebagai branch testing, karena cabang-cabang dari kode atau
fungsi logika diidentifikasi dan dites, atau disebut juga sebagai control-flow
testing.
Ada 2 bentuk Basis path, yaitu:
- Zero
Path: Jalur penghubung yang tidak penting atau jalur pintas yang ada pada
suatu sistem.
- One
Path: Jalur penghubung yang penting atau berupa proses pada suatu sistem.
- Cyclomatic
Complexity
Adalah pengukuran software yang
memberikan pengukuran kuantitatif dari kompleksitas logika program. Pada konteks metode basis path
testing, nilai yang dihitung bagi cyclomatic complexity menentukan jumlah
jalur-jalur yang independen dalam kumpulan basis suatu program dan memberikan
jumlah tes minimal yang harus dilakukan untuk memastikan bahwa semua pernyataan
telah dieksekusi sekurangnya satu kali.
Jalur independen adalah tiap jalur
pada program yang memperlihatkan 1 kelompok baru dari pernyataan proses atau
kondisi baru.
3.Graph Matrix
Adalah matrik berbentuk segi empat sama sisi,
dimana jumlah baris dan kolom sama dengan jumlah node, dan identifikasi baris
dan kolom sama dengan identifikasi node, serta isi data adalah keberadaan
penghubung antar node (edges).
Beberapa properti yang dapat ditambahkan
sebagai pembobotan pada koneksi antar node di dalam graph matrix, sebagai
berikut:
Kemungkinan jalur (Edge) akan dilalui /
dieksekusi.
Waktu proses yang diharapkan pada jalur
selama proses transfer dilakukan.
Memori yang dibutuhkan selama proses transfer
dilakukan pada jalur.
0 komentar:
Posting Komentar