Cerita Hosting Administrator and Content Manager for ceritahosting.com

TESTING IMPLEMENTASI SISTEM INFORMASI:(2)

4 min read

TESTING IMPLEMENTASI SISTEM INFORMASI

(E-Learning Series)

TOPIK-2:

Mengetahui mengenai pengujian menggunakan metode white-box:

  • Metode pengujian white-box testing
  • Metode pengujian basis path testing
  • Metode pengujian control structure testing

[Pressman2016] ch17, p444-p458

Dari materi-1 yang sudah diberikan, rekan didik sudah mendapatkan gambaran mengenai definisi dari testing implementasi system informasi.

Pengujian perangkat lunak (bahasa Inggris: software testing) adalah
Suatu investigasi yang dilakukan untuk mendapatkan informasi mengenai kualitas dari produk atau layanan yang sedang diuji (under test). Pengujian perangkat lunak juga memberikan pandangan mengenai perangkat lunak secara obyektif dan independen, yang bermanfaat dalam operasional bisnis untuk memahami tingkat risiko pada implementasinya.

Teknik-teknik pengujian mencakup, namun tidak terbatas pada, proses mengeksekusi suatu bagian program atau keseluruhan aplikasi dengan tujuan untuk menemukan bug perangkat lunak (kesalahan atau cacat lainnya). Pengujian perangkat lunak dapat dinyatakan sebagai proses validasi dan verifikasi bahwa sebuah program / aplikasi / produk:

1. Memenuhi kebutuhan (requirement) yang mendasari perancangan dan pengembangan perangkat lunak tersebut;

2. Berjalan sesuai dengan yang diharapkan

3. Dapat diterapkan menggunakan karakteristik yang sama

4. Memenuhi kebutuhan semua pihak yang berkepentingan.

Metode pengujian white-box testing


White box testing adalah pengujian yang didasarkan pada pengecekan terhadap detail perancangan, menggunakan struktur kontrol dari desain program secara procedural untuk membagi pengujian ke dalam beberapa kasus pengujian. Secara sekilas dapat diambil kesimpulan white box testing merupakan petunjuk untuk mendapatkan program yang benar secara 100%.

White-box/Structure-based terdapat dalam standar BS7925-2.

Testabilitas perangkat lunak adalah seberapa mudah sebuah program computer dapat diuji.

Pengujian White Box disebut juga :

Glass Box Testing (Pengujian kotak bening)

• Code Base Testing (Source kodenya dimunculkan)

• Structural Testing (Struktur program ditampilkan)

Pengujian & Langkah:

Pengujian white box:

• Untuk mengetahui cara kerja suatu perangkat lunak secara internal.

• Untuk menjamin operasi-operasi internal sesuai dengan spesifikasi yang telah ditetapkan dengan menggunakan struktur kendali dari prosedur yang dirancang.

Pelaksanaan pengujian white box:

• Menjamin seluruh independent path dieksekusi paling sedikit satu kali. Independent path adalah jalur dalam program yang menunjukkan paling sedikit satu kumpulan proses ataupun kondisi baru.

• Menjalani logical decision pada sisi dan false.

• Mengeksekusi pengulangan (looping) dalam batas-batas yang ditentukan.

• Menguji struktur data internal.

Langkah-langkah white box:

1. Mendefinisikan semua alur logika

2. Membangun kasus untuk digunakan dalam pengujian

3. Melakukan pengujian.

Jenis Uji White-Box:


  • Statement coverage testing

The percentage of executable statements that have been exercised by a test suite.


Contoh:

  • Decision coverage testing

The percentage of decision outcomes that have been exercised by a test suite.

100% decision coverage implies 100% statement coverage.


Contoh:



  • Condition coverage testing

Dalam teknik pengujian Box putih ini mencoba untuk menutupi cakupan kode 100%, artinya saat menguji setiap kondisi yang mungkin dalam kode dieksekusi setidaknya satu kali.

apakah setiap struktur kendali (if … elseif … else …) telah dievaluasi ke TRUE atau FALSE?


  • Multiple coverage testing

Dalam jenis pengujian yang kita gunakan untuk mencakup setiap titik sistem yang akan dijalankan sekali. Dalam proses pengembangan sebenarnya pengembang memanfaatkan kombinasi teknik yang sesuai untuk aplikasi perangkat lunak yang ada.


Basis path

  •  Pengukuran kompleksitas kode program dan pendefinisian alur yang akan dieksekusi.
  • Digambarkan sequence, if, atau while nya

Uji coba basis path adalah teknik uji coba white box yg diusulkan Tom McCabe.

Metode ini memungkinkan perancang test case mendapatkan ukuran kekompleksan logical dari perancangan prosedural dan menggunakan ukuran ini sbg petunjuk untuk mendefinisikan basis set dari jalur pengerjaan. 

Test case yg didapat digunakan untuk mengerjakan basis set yg menjamin pengerjaan setiap perintah minimal satu kali selama uji coba.

Contoh:


Sekarang untuk memastikan cakupan maksimum, kami akan membutuhkan 4 kasus uji.

Bagaimana? Cukup – ada 2 pernyataan keputusan, jadi untuk setiap pernyataan keputusan, kita perlu dua cabang untuk diuji. Satu untuk yang benar dan yang lainnya untuk kondisi yang salah. Jadi untuk 2 pernyataan keputusan, kita akan membutuhkan 2 kasus uji untuk menguji sisi sebenarnya dan 2 kasus uji untuk menguji sisi palsu, yang membuat total 4 kasus uji.


TestCase_01: A=50, B=60

TestCase_02: A=55, B=40

TestCase_03: A=40, B=65

TestCase_04: A=30, B=30


Red Line – TestCase_01 = (A=50, B=60)

Blue Line = TestCase_02 = (A=55, B=40)

Orange Line = TestCase_03 = (A=40, B=65)

Green Line = TestCase_04 = (A=30, B=30)

https://www.softwaretestinghelp.com/white-box-testing-techniques-with-example/

  • 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.

Terdapat 2 persamaan yang digunakan, yaitu:

V(G)= E – N + 2 atau V(G)= P + 1

Keterangan:

V(G)= cyclomatic complexity untuk flow graph G

E=Jumlah edge(panah)

N=Jumlah node(lingkaran)

P=Jumlah predicate node

  • 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.
  • Sumber daya (resources) yang dibutuhkan selama proses transfer dilakukan pada jalur.

  • Control Structur Testing

Meliputi;

Condition testing Suatu metode disain test case yang memeriksa kondisi logika yang terdapat pada modul program.

  • Data flow testing:: Metode data flow testing memilih jalur program berdasarkan pada lokasi dari definisi dan penggunaan variabel-variabel pada program.
  • Loop testing:: suatu teknik white box testing yang berfokus pada validitas konstruksi loop secara eksklusif.  Ada 4 kelas dari loop, yaitu;

    • Simple Loops

Diaplikasikan pada bentuk loop yang sederhana, dimana n adalah jumlah maksimum yang diijinkan untuk melalui loop.

  • lewati loop secara keseluruhan.
  • hanya satu yang melalui loop
  • m dapat melalui loop dimana m = n atau m < n

2. Nested loop 

teruskan sampai semua loop selesai diuji.

3. Concanated Loop 

  • Dapat diuji dengan menggunakan pendekatan simple loop bila masing-masing dari loop independent terhadap yang lain.
  • Bila dua loop dirangkai dan pencacah loop untuk loop 1 digunakan sebagai harga awal untuk loop 2, kemudian loop tersebut menjadi tidak independen, maka pendekatan yang diaplikasikan ke loop tersebut direkomendasikan.

4. Unstructured Loop 

Apabila memungkinkan, kelas loop ini harus didesain lagi untuk mencerminkan penggunaan konsepsi pemrograman terstruktur.

Kesimpulan:

White box :

  • Dilakukan oleh penguji yang mengetahui tentang QA.
  • Melakukan testing pada software/program aplikasi menyangkut security dan performance program tersebut (meliputi tes code, desain implementasi, security, data flow, software failure).
  • Dilakukan seiring dengan tahapan pengembangan software atau pada tahap testing.

Kelebihan White Box Testing

     – 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.
    – Ketidaksesuaian asumsi. Menampilkan asumsi yang tidak sesuai dengan kenyataan, untuk di analisa dan diperbaiki.
      – 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.

Pustaka


– [Homes2012] Homès, Bernard. 2012. Fundamentals of Software Testing. Hoboken: John Wiley & Sons, Inc.
– [Pressman2016] Pressman, Roger; Maxim, Bruce. 2016. Software Engineering: A Practitioner’s Approach, 8th Edition
– [Fournier2009] Fournier, Greg. 2009. Essential Software Testing: A Use-Case Approach
– [Kendal2014] Kendal & Kendal. 2014. Systems Analysis and Design (9th Ed). Pearson Education

Avatar
Cerita Hosting Administrator and Content Manager for ceritahosting.com

Sistem Informasi Management-Dukungan SIM terhadap kualitas produk dan jasa

TOPIK PERKULIAHAN: Dukungan SIM terhadap kualitas produk dan jasa Definisi: Pengertian Kualitas Produk  Kualitas produk adalah kondisi fisik, fungsi dan sifat suatu produk baik...
Avatar Cerita Hosting
7 min read

PENGANTAR ARTIFICIAL INTELLIGENCE (AI)

  KECERDASAN BUATAN (ARTIFICIAL INTELLIGENCE)   Definisi: Kecerdasan buatan atau Artificial Intelligence (AI) adalah simulasi dari kecerdasan yang dimiliki oleh manusia yang dimodelkan di...
Avatar Cerita Hosting
3 min read

PERKEMBANGAN SISTEM INFORMASI DI DALAM PERUSAHAAN

MATERI PERKULIAHAN PERKEMBANGAN SISTEM INFORMASI DI DALAM PERUSAHAAN Sistem informasi manajemen atau SIM (bahasa Inggris: management information system, MIS) adalah: Sistem perencanaan bagian dari...
Avatar Cerita Hosting
2 min read

Leave a Reply

Your email address will not be published. Required fields are marked *