Definisi
Testing Menurut Para Ahli
· Menurut Hetzel 1973: Testing adalah proses pemantapan kepercayaan
akan kinerja program atau sistem sebagaimana yang diharapkan.
· Menurut Myers 1979: Testing adalah proses eksekusi
program atau sistem secara intens untuk menemukan error.
· Menurut Hetzel 1983 (Revisi): Testing adalah tiap
aktivitas yang digunakan untuk dapat melakukan evaluasi suatu atribut atau kemampuan
dari program atau sistem dan menentukan apakah telah memenuhi kebutuhan atau
hasil yang diharapkan.
· Menurut Standar ANSI/IEEE 1059: Testing adalah proses menganalisa
suatu entitas software untuk mendeteksi perbedaan antara kondisi yang ada
dengan kondisi yang diinginkan (defects / errors / bugs) dan mengevaluasi
fitur-fitur dari entitas software.
Prinsip
Testing
Terdapat 6 kunci prinsip-prinsip
testing, yaitu:
·
Testing yang komplit tidak mungkin.
·
Testing merupakan pekerjaan yang kreatif dan sulit.
·
Alasan yang penting diadakannya testing adalah untuk
mencegah terjadinya errors.
·
Testing berbasis pada resiko.
·
Testing harus direncanakan.
·
Testing membutuhkan independensi.
Tahapan Testing
Ada 2 tahapan
testing, yaitu:
·
Pre Implementation Testing (Testing Sebelum
Implementasi)
Sebelum di implementasikan ide/konsep harus di test terlebih dahulu. Pre
implementation tidak dilakukan oleh programmer atau tim testing, tetapi oleh
tim reviewer, yang terdiri dari
project manager, klien atau pembangun sistem.
·
Post Implementayin Testing (Testing Setelah
Implementation)
Teknik testing biasanya terdiri dari 2, yaitu:
A. White box
Logika, kondisi, perulangan atau blok statment, testingnya sebagian atau
seluruh bagian program.
B. Black box :
1. Testing dilakukan
tanpa mengetahui dari struktur programnya.
2. Dilakukan selain
programmer atau orang yang tidak mempunyai akses langsung kedalam program.
3. Program ditesting
dengan cara di input ke dalam black box dan di cek apakah outputnya sesuai
dengan perintah.
Tipe
Testing
·
Volume : Memfokuskan untuk input yang besar
·
Usability : Mengukur reaksi user ( Skala 1 : 10 )
·
Performance : Mengukur kecepatan pada beberapa keadaan
·
Configurasi : Mengkonfigurasi untuk bermacam-macam
hadware atau software
·
Compatibility : komplabiliti dengan aplikasi lain ( mengukur
watu adaptasi )
·
Relibiality / availability : mengukur ketahanan pada
priode waku yang lama
·
Security : Mengukur keamanan program
·
Resource Usage : Mengukur penggunaan RAM, ruang disk,
dll
·
Installabiltiy : di install pada bermacam-macam keadaan
( mengukur waktu install )
·
Recoverabilty : mengukur waktu untuk me-recover
·
Serviceability ; mengukur waktu service
·
Load / stress : untuk data extreame dan traffic
·
Regression testing
·
Penerimaan user / User Acceptance Testing
·
Beta testing
·
Release testing
·
Dll
Pihak-Pihak yang Melakukan Testing
·
The programmer
·
Tim tester
·
Beta tester
·
Kostumer
·
Maintainer
·
Dll
Tahap-Tahap Testing
·
Unit Testing
Tidak ada standar untuk sesuatu yang dinamakan dengan unit :
A. Unit testing
mengecek kohesi tunggal antara prosedur atau fungsi dengan prosedur atau fungsi
yang lain.
B. Bagian terkecil
dari program ditesting dan di compile.
C. Sebuah fungsi yang
dapat ditulis dalam suatu waktu tertentu
·
Integration Testing
Integration testing adalah proses mengecek masing – masing unit apakah
tetap bekerja dengan baik ketika diintergrasikan.
·
System Testing
A. Pada system
testing, pengecekan terhadap apakah tetap bekerja dengan baik pada kondisi
normal.
B. Pengecek juga
mengecek performance dari sistem, dengan kondisi tidak normal misalnya dengan
cara memasukan jumlah data input yang besar.
C. Pengecek juga
mengecek apakah sistem akan menampilkan pesan yang benar ketika sebuah error
terjadi.
D. Pengecek juga
mengecek keamanan dari sistem.
Bagian-Bagian
yang Dilakukan Testing
·
Bagian Statment / Statment Coverage
·
Bagian Percabangan / Branch Coverage
·
Bagian Kondisi / Condition Coverage
Testing Tools
Testing bervolume
besar biasanya membutuhkan penggunaan tool-tool otomatis, JACOBSON menyarankan
bahwa 75% dari test lebih baik dilakukan secara otomatis dari pada dilakukan secara
manual. Kemampuan dari tools otomasi sistem:
· Merekam aksi mouse dan keyboard untuk memungkinkan pengulangan
pemutaran kembali
·
Jalankan test script secara berulang-ulang
·
Memungkinkan untuk merekam hasil test
·
Merekam hasil test
·
Merekam run time error
·
Membuat dan mengatur regression test
·
Menghasilkan test report
·
Menghasilkan test data
·
Merekam penggunaan memory
·
Mengatur / mengelola test case
·
Analisa keseluruhan
Tidak ada komentar:
Posting Komentar