Pada sebuah tim pengembang dan pengujian perangkat lunak minimal terdapat

Unsplash/Computer

Pengujian Perangkat Lunak adalah proses menjalankan dan mengevaluasi sebuah PL secara manual maupun otomatis untuk menguji apakah PL sudah memenuhi persyaratan atau belum atau untuk menentukan perbedaan antara hasil yang diharapkan dengan hasil sebenarnya. Pelaksanaan pengujian PL biasanya disesuaikan dengan metodologi pembangunan PL yang digunakan. Pada umumnya pengujian dilakukan sesudah tahap pemograman,namun demikian perencanaan pengujian dilakukan mulai tahap analisis.

1. Menilai apakah perangkat lunak yang dikembangkan telah memenuhi kebutuhan pemakai.

2. Menilai apakah tahap pengembangn PL sesuai dengan metodologi yang digunakan.

3. Membuat dokumentasi hasil pengujian yang menginformasikan kesesuaian PL yang diuji dengan spesifikasi yang ditentukan.

1. Tentukan apa yang akan diukur melalui pengujian.

2. Bagaimana pengujian akan dilaksanakan.

3. Membangun suatu kasus uji (test case) yaitu sekumpulan data atau situasi yang akan digunakan dalam pengujian.

4. Tentukan hasil yang akan diharapkan atau hasil yang sebenarnya.

5. Jalankan Kasus pengujian.

6. Bandingkan hasil pengujian dan hasil yang diharapkan. 

Pengujian Tahap Analisis

Pengujian pada tahap analisis ditekankan pada validasi terhadap kebutuhan,untuk menjamin bahwa kebutuhan telah dispesifikasi dengan benar. Tujuan pengujian pada tahap ini adalah untuk mendapatkan kebutuhan yang layak dan untuk memastikan apakah kebutuhan tersebut sudah dirumuskan dengan baik.

Faktor-faktor pengujian yang dilakukan pada tahap analisis :

1. Kebutuhan yang berkaitan dengan metodologi.

2. Pendefenisian spesifikasi fungsional

3. Penentuan spesifikasi kegunaan.

4. Penentuan kebutuhan portabilitas.

5. Pendefenisian antar muka sistem. 

Pengujian Tahap Perancangan

Pengujian tahap perancangan bertujuan untuk menguji struktur perangkat lunak yang diturunkan dari kebutuhan. Kebutuhan yang bersifat umum dirinci menjadi bentuk yang lebih spesifik.

Faktor-faktor pengujian yang dilakukan pada tahap perancangan :

1. Perancangan yang berkaitan dengan kebutuhan.

2. Kesesuaian perancangan dengan metodologi dan teori.

3. Portabilitas rancangan.

4. Perancangan perawatan.

5. Kebenaran rancangan berkaitan denganfungsi dan aliran data.

6. Kelengkapan perancangan antar muka.

Pengujian Tahap Implementasi

Pengujian pada tahap ini merupakan pengujian unit-unit yang dibuat sebelum diintegrasi menjadi aplikasi keseluruhan.

Faktor-faktor pengujian yang dilakukan pada tahap ini :

1. Kendali integritas data.

5. Pengembangan prosedur operasi.

Pengujian Tahap Pengujian

Tujuan pengujian pada tahap ini adalah untuk menilai apakah spesifikasi program telah ditulis menjadi instruksi-instruksi yang dapat dijalankan pada mesin. Selain itu juga untuk menilai apakah instruksi yang ditulis tersebut telah sesuai dengan spesifikasi program.

Pengujian dengan Kasus Uji

Pengujian yang dilakukan meliputi pengujian unit (berupa prosedur atau fungsi) dan pengujian sistem. Dalam pengujian unit,unit-unit yang diuji meliputi unit-unit yang ada dalam sistem,sedangkan pengujian sistem dilakukan terhadap sistem secara keseluruhan. Setiap pengujian dilakukan dengan menggunakan berbagai data masukan yang valid maupun tidak.

Ada dua teknik pengujian yang dapat digunakan untuk menguji Perangkat Lunak yaitu :

1. Teknik Black Box Testing.

2. Teknik White Box Testing.

3. Pengujian Respon Pengguna

Metode ujicoba black box memfokuskan pada keperluan fungsional dari software. Karena itu ujicoba blackbox memungkinkan pengembang software untuk membuat himpunan kondisi input yang akan melatih seluruh syarat-syarat fungsional suatu program. Ujicoba blackbox bukan merupakan alternatif dari ujicoba white box, tetapi merupakan pendekatan yang melengkapi untuk menemukan kesalahan lainnya

Ciri-ciri Black Box Testing

Black box testing berfokus pada kebutuhan fungsional pada software, berdasarkan pada spesifikasi kebutuhan dari software. Black box testing bukan teknik alternative daripada white box testing. Lebih daripada itu, ia merupakan pendekatan pelengkap dalam mencakup error dengan kelas yang berbeda dari metode white box testing. Black box testing melakukan pengujian tanpa pengetahuan detil struktur internal dari system atau komponen yang dites, juga disebut sebagai behavioral testing, specification based testing, input/output testing atau functional testing.

Pada black box testing jenis teknik desain tes yang dapat dipilih berdasarkan pada tipe testing yang akan digunakan, diantaranya:

- Equivalent class partitioning

- Boundary value analysis

- State transition testing

- Cause – effect graphing

- Fungsi-fungsi yang salah atau hilang 

- Kesalahan dalam struktur data atau akses database eksternal 

- Kesalahan inisialisasi dan terminasi

- Menganalisis kebutuhan dan spesifikasi dari perangkat lunak. 

- Pemilihan jenis input yang memungkinkan menghasilkan output benar serta jenis input yang memungkinkan output salah pada perangkat lunak yang sedang diuji. 

- Menentukan output untuk suatu jenis input. 

- Pengujian dilakukan dengan input-input yang telah benar-benar diseleksi. 

- Pembandingan output yang dihasilkan dengan output yang diharapkan. 

- Menentukan fungsionalitas yang seharusnya ada pada perangkat lunak yang sedang diuji.

Black Box testing dapat dilakukan pada setiap level pembangunan sistem. Mulai dari unit, integration, system, dan acceptance.

Keunggulan dan Kelemahan Black Box

- Black box testing dapat menguji keseluruhan fungsionalitas perangkat lunak.

- Black box testing dapat memilih subset test yang secara efektif dan efisien dapat menemukan cacat - dengan cara ini black box testing dapat membantu memaksimalkan testing investment. 

- Ketika tester melakukan black box testing, tester tidak akan pernah yakin apakah perangkat lunak yang diuji telah benar-benar lolos pengujian.

Contoh Pengujian Black Box


Contoh Pengujian Black Box 1

Contoh Pengujian Black Box 2

Contoh Pengujian Black Box 3

Contoh Pengujian Black Box 4

Contoh Pengujian Black Box 5

Contoh Pengujian Black Box 6

Contoh Pengujian Black Box 7

Contoh Pengujian Black Box 8

Dikenal juga dengan nama  glass box, structural, clear box dan open box testing. Merupakan teknik testing perangkat lunak yang harus mengetahui secara detail tetang perangkat lunak yang akan di uji. Untuk pengujian yang lengkap maka suatu perangkat lunak harus diuji dengan  white box dan black box testing.

White Box dan Black Box testing

Dengan Menggunakan white box testing, software engineer dapat medesain suatu  test cases yang dapat digunakan untuk :

1. Menguji setiap jalur independent

2. Menguji keputusan logic (true atau falsa )

3. Menguji Loops dan batasannya 

4. Menguji Data Struktur internalnya 

White Box Testing menggunakan 3 macam tahapan testing 

Cara pengujian dengan melihat ke dalam modul untuk meneliti kode – kode program yang ada, dan menganalisis apakah ada kesalahan atau tidak. Jika ada modul yang menghasilkan output yang tidak sesuai dengan proses bisnis yang dilakukan maka baris – baris program, variabel dan parameter yang terlibat pada unit tersebut akan dicek satu persatu dan diperbaiki kemudian di-compile ulang.

Deskripsi fase-fase utama dalam pengujian

Semua kebutuhan user diuji secara individu

Menspesifikasi komponen sistem yang diuji

- Prosedur Pencatatan Hasil dan Prosedur Kebutuhan akan Hardware dan Software

Misal: kekurangan staff, alat, waktu dll.

Hubungan antara rencana pengujian dan proses pengembangan system

- Hanya test yang lengkap yang dapat meyakinkan sistem terbebas dari kesalahan, tetapi hal ini sangat sulit dilakukan.

- Prioritas dilakukan terhadap pengujian kemampuan sistem, bukan masing-masing komponennya.

- Pengujian untuk situasi yg tipikal lebih penting dibandingkan pengujian terhadap nilai batas.

- Test data: Input yang yang direncanakan digunakan oleh sistem.

- Test cases: Input yang digunakan untuk menguji sistem dan memprediksi output dari input jika sistem beroperasi sesuai dengan spesifikasi.



Contoh Pengujian White Box

Contoh Pengujian White Box 1

Contoh Pengujian White Box 2

Contoh Pengujian White Box 3
Contoh Pengujian White Box 4
Contoh Pengujian White Box 5
Contoh Pengujian White Box 6
Contoh Pengujian White Box 7

Pengujian perangkat lunak pada kasus pengembangan perangkat lunak kami :

Judul              : Pembuatan sistem informasi penjualan berbasis desktop pada Toko Mainan Anak Dana Sentosa.

Deskripsi       : Sistem informasi atau software yang digunakan untuk melakukan kegiatan transaksi

atau pembelian mainan pada Toko Mainan Anak Dana Sentosa.

Metode          : Black Box & White Box

Gambar asli dapat diunduh DISINI

Pada pengujian black box, dilakukan pengujian pada proses-proses sistem yaitu mulai dari penginputan data produk, pendaftaran sampai pembayaran. Hasil dari semua pengujian black box adalah valid atau benar atau betul sesuai dengan fungsinya.

Proses Kelola Data Produk


Proses kelola data produk pada gambar flowchart di atas adalah salah karena terdapat kesalahan pada hasil keputusan Apakah berhasil ? Jika hasil keputusan "Ya" seharusnya proses dilanjut dengan data disimpan di sistem. Sedangkan bila hasil keputusan "Tidak" maka pegawai akan mengulang untuk menginputkan data produk. Dari hasil tersebut dapat disimpulkan bahwa pengujian pada proses kelola data produk adalah invalid atau salah atau tidak sesuai pada proses seharusnya.

Proses kelola data produk yang seharusnya sebagai berikut :

Hasil pengujian proses kelola data produk adalah valid atau benar atau betul sesuai prosesnya.

Source Code (JAVA) Proses Kelola Data Produk :

public class Kelola Data Produk {

    public Kelola Data Produk() {

    public varchar ID_Produk;

    public varchar Nama_Produk;

    public varchar Deskripsi;

    public void Input_data_produk() {

    public void Menyimpan_data_produk() {

    public void Menampilkan_data_produk() {


Penjelasan proses pendaftaran telah dijabarkan dan sesuai seperti pada gambar flowchart proses pendaftaran diatas. Hasil pengujian proses pendaftaran adalah valid atau benar atau betul sesuai prosesnya.

Source Code (JAVA) Pendaftaran :

public class Pendaftaran {

    public varchar ID_Pendaftaran;

    public varchar ID_Pembeli;

    public varchar Nama_Pembeli;

    public varchar Alamat_Pembeli;

    public void Input_data_pendaftaran() {

    public void Mengirim_data_pendaftaran() {

Proses login pada gambar flowchart di atas adalah salah karena terdapat kesalahan pada proses setelah proses Pemeriksaan data akun. Setelah proses Pemeriksaan data akun, apabila data akun sesuai atau berhasil maka seharusnya sistem akan melanjutkan ke halaman beranda atau tampilan produk. Dari hasil tersebut dapat disimpulkan bahwa pengujian pada proses login adalah invalid atau salah atau tidak sesuai pada proses seharusnya.

Proses login yang seharusnya sebagai berikut :

Hasil pengujian proses login adalah valid atau benar atau betul sesuai prosesnya.

Source Code (JAVA) Login :

    public void Input_data_akun() {

    public void Mengirim_data_akun() {

Penjelasan proses pemesanan telah dijabarkan dan sesuai seperti pada gambar flowchart proses pemesanan diatas. Hasil pengujian proses pemesanan adalah valid atau benar atau betul sesuai prosesnya.

Source Code (JAVA) Pemesanan :

    public varchar ID_Pesanan;

    public varchar ID_Pemesan;

    public varchar Nama_Pemesan;

    public varchar Alamat_Pengiriman_Pesanan;

    public varchar ID_Produk;

    public varchar Nama_Produk;

    public number Jumlah_Total_Pesanan;

    public money Total_Harga;

    public datetime Tanggal_Pemesanan;

    public void Melihat_produk_atau_pesanan() {

    public void Membuat_pesanan() {

    public void Menyimpan_pesanan() {

Penjelasan proses pembayaran telah dijabarkan dan sesuai seperti pada gambar flowchart proses pembayaran diatas. Hasil pengujian proses pembayaran adalah valid atau benar atau betul sesuai prosesnya.

Source Code (JAVA) Pembayaran :

public class Pembayaran {

    public varchar ID_Pembayaran;

    public varchar ID_Pengirim;

    public varchar Nama_Pengirim;

    public varchar Alamat_Pengirim;

    public varchar Metode_Pembayaran;

    public money Nominal_Uang;

    public number Nomor_Tujuan_Pengiriman;

    public datetime Tanggal_Pembayaran;

    public varchar ID_Produk;

    public varchar Nama_Produk;

    public number Jumlah_Total_Pesanan;

    public money Total_Harga;

    public void Input_data_pembayaran() {

    public void Mengirim_data_pembayaran() {

Proses Pengiriman Barang & Bukti Transaksi

Penjelasan proses pengiriman barang & bukti transaksi telah dijabarkan dan sesuai seperti pada gambar flowchart proses pengiriman barang & bukti transaksi diatas. Hasil pengujian proses pengiriman barang & bukti transaksi adalah valid atau benar atau betul sesuai prosesnya.

Source Code (JAVA) Pengiriman Barang & Bukti Transaksi :

public class Pengiriman Barang & Bukti Transaksi {

    public Pengiriman Barang & Bukti Transaksi() {

    public varchar ID_Pengiriman;

    public varchar ID_Pembeli;

    public varchar Nama_Pembeli;

    public varchar Alamat_Pembeli;

    public varchar ID_Produk;

    public varchar Nama_Produk;

    public number Jumlah_Total_Pesanan;

    public money Total_Harga;

    public datetime Tanggal_Pengiriman;

    public void Mencetak_bukti_transaksi() {

    public void Mengirim_barang_&_bukti_transaksi() {

Proses Pembuatan Laporan Penjualan

Penjelasan proses pembuatan laporan penjualan telah dijabarkan dan sesuai seperti pada gambar flowchart proses pembuatan laporan penjualan diatas. Hasil pengujian proses pembuatan laporan penjualan adalah valid atau benar atau betul sesuai prosesnya.

Source Code (JAVA) Pembuatan Laporan Penjualan :

public class Pembuatan Laporan Penjualan {

    public Pembuatan Laporan Penjualan() {

    public varchar ID_Penjualan;

    public varchar ID_Pembeli;

    public varchar Nama_Pembeli;

    public varchar Alamat_Pembeli;

    public varchar Alamat_Pengiriman_Pesanan;

    public varchar ID_Produk;

    public varchar Nama_Produk;

    public number Jumlah_Total_Pesanan;

    public money Total_Harga;

    public varchar ID_Pembayaran;

    public varchar Metode_Pembayaran;

    public money Nominal_Uang;

    public datetime Tanggal_Transaksi;

    public void Menyimpan_laporan_penjualan() {

    public void Melihat_laporan_penjualan() {

    public void Mencetak_laporan_penjualan() {

Page 2

Hai, Salam Sejahtera buat kita semua. Bagaimana kabarnya nih ? baik-baik saja ya...Perkenalkan kami admin dari blog Rekayasa Perangkat Lunak Kita. Kami dari Surabaya dan kuliah di Universitas Wijaya Kusuma Surabaya prodi Teknik Informatika. Tujuan dari pembuata blog ini sendiri untuk memenuhi tugas mata kuliah kami yaitu Rekayasa Perangkat Lunak. Selain memenuhi tugas, kami juga berkeinginan untuk terus update dan menambah ilmu di blog ini meskipun tugas kuliah kami sudah selesai. Tentunya kami perlu dukungan dari Sobat semua dengan sering membaca artikel di blog ini. Semoga blog pendidikan ini semakin berkualitas sehingga dapat memberikan lebih banyak ilmu pada pembaca. Salam Blogger...

Video yang berhubungan

Postingan terbaru

LIHAT SEMUA