Black Box Testing
Pengertian black box testing: pengujian yang dilakukan hanya mengamati hasil eksekusi melalui data uji dan memeriksa fungsional dari perangkat lunak.
Jadi dianalogikan seperti kita melihat suatu koatak hitam , kita hanya bisa melihat penampilan luarnya saja, tanpa tau ada apa dibalik bungus hitam nya. Sama seperti prngujian black box, mengevaluasi hanya dari tampilan luarnya(interface nya) , fungsionalitasnya.tanpa mengetahui apa sesungguhnyayang terjadi dalam proses detilnya.( Hanya tau input- dan outputnya)
Kesimpulannya:
-pada antar muka PL
-guna memperlihatkan bahwa fungsi – fungsi PL dapat beroperasi
-menguji beberapa aspek dasar dengan memperhatikan logika internal
Keunggulan Black Box
-bisa memilih subset test secara efektif dan efisien
-dapat menemukan cacat
-memaksimalkan testing investmen
Kelemahan:
-tester tidak pernah yakin apakah pl tersebut benar – benar lolos uji.
Jenis:
Graph based testing
Equivalence partitioning
Bonday value analisis
Comparison testing
Orthogonal array testing
Langkah – langkahnya:
1.analisa kebutuhan dan spesifikansi
2.pemilihan input
3.pemilihan outputnya
4.seleksi input
5.pengujian
6.review hasil
7.evaluasi
·Equivalence testing temasuk dalam kategori black box digunakan untuk mengurangi jumlah test case yang ada saat pengujian.
-Menguji keseluruhan fungsionalitas yang memiliki syarat tertentu
-Yang di uji fungsionalitasnya yang dilihat dari input-output
Cara pengujiannya
-Pengumpulan input test casenya dikurangi agar efisiensidalam waktu, dan memperolah hasil yang maksimal.
Contoh test case nya:
Missal : untuk kasus HRD – input umur
Missal 0-99
Mengurangi kasus uji ->boundary
Syaratnya:
-Memisahkan domain
-Valid/tidak valid
-Range
Use Case:
Membuat use case untuk menguji program dan sebagai acuannyaadalah use case.
Mendefinisikan transaksi pada proses – proses yang ada pada system.
Pendekatan dengan use case:
Dibuat oleh develop dan untuk develop. Informasi yang ada pada use case sangat berguna.
Fungsi :
Menggambarkan fungsi requirement
Untuk proses identifikasi
Menyediakan komponen dasar untuk komponen internal system, sturktur DB dan keterhubungan .
Menyediakan dasar dalam membangun test case.
Boundary Value Testing.
Pengurangan kasus uji tapi lebih di kembangkan pengujian batasan di input.
Dinilai pada batasnya yang di test value dari batasan- batasanya
Focus boundary
-Batasan – batasan yang simple karena banyak cacat perangkat lunak tersembunyi.
-Kasus uji yang melatih nilai-nilai batas
-Boundary melengkapi equivalence testing focus input – output.
Langkah boundary:
-Identifikasi kelas
-Identifikasi batasan
-Buat test case batasan dengan memilih titik pada batasan (batas atas dan batas bawah).
White Box Testng
-Memberikan jaminan
-Menggunakan semua keputusan
-Mengeksekusi semua loop
-Menggunakan struktur dat internal
-Detail procedural
-Teliti
Jenis
Basis path
Control structura testing
-Condition testing
-Data flow testing
-Loop testing
Keunggulan white box:
-Mampu menditeksi kesalahan ;
1.Kesalahan logika
2.Ketidak sesuaian asumsi
3.Case sensitive
Kelemaham:
-Melibatkan sumber daya yang besar , jadi boros.
Syarat dalam menjalankan strategi white box:
-Mendefinisikan semua alur logika
-Membangun kasus untuk digunakan dalam pengujian
-Melakukan pengujian
Basis path testing
Bermanfaat untuk menentukan :
-Ukuran kompleksitas logika suatu struktur program
-Menggunakan nilai
Basis path memerlukan masukan berupa source code
Langkah-langkahnya:
1.Menggambarkan alur logika
2.Menentukan cyclomatic complex
3.Menentukan basis set
4.Membuat data uji
Methodnya:
-Node
-Edge/link
·Cyclomatic complexity
Suatu pengukuran untuk PL yang menyediakan ukuran kuantitatif dan kompleksitas, digunakan untuk menentukan banyaknya independent path
Cyclomatic complexity dipengaruhi oleh 3 hal:
-Panah
-Lingkaran
-Node
-Rumus= v(G)=E-N+2
·Independent path
Jalur yang melintasi mnimal satu kumpulan statement program.
Test case
Testing untuk menyiapkan kasus uji untuk eksekusi semua alur logika.
Tujuan dibuat test case: untuk mempermudah eksekusi setip basis path
Langkah-langkahnya:
1.Kolom 1 diberi nomor path
2.Kolom 2 diberi nama sesuai nama variabel
3.Kolom terakhir kolom yang menulis hasil akhir
4.Banyak garis sesuai dengan jumlah basis path
Acceptance Test
Pengujian dengan melibatkan sekumpulan data untuk seorang acceptance decision sebagai keputusan terhadap suatu produk PL
-Testing di awal
1.Smoke test: diasumsikan hanya focus di kesalahannya / error nya saja.
Integration testin adalah modul – modul software di kombinasi dan dilakukan pengujian secara keseluruhan.
Tujuan :
Kehandalan , menemukan kesalahan pada saat melakukan penggabungan modul uji interaksi antara komponen / modul.
Pendekatan Big-bang= modul di satukan , kemudian baru di uji
Kelemahan : ketika sudah di satukan , baru disitu menemukan error.
Kelebihan: pengujiannya mudah (sudah dijadi satu)
Incremental :
Top down:
Utama=penting
Bawah = kecil
Depth first
Mengerjakan yang paling dalam hirarkinya.
Breath first:
Perlavel
Terserah mau di atas atau di bawah
Horizontal