Pengujian
adalah kegiatan dilakukan untuk mengevaluasi kualitas suatu produk dan untuk
meningkatkan dengan mengidentifikasi cacat dan masalah. Jika kita menjalankan
program dengan maksud untuk menemukan kesalahan (Myers,1979). Metode dan
pengujian sistematis dari aplikasi Web adalah tindakan penting yang diberikan
penekanan khusus dalam jaminan kualitas. Pengujian aplikasi Web melampaui
pengujian sistem perangkat lunak tradisional. Meskipun persyaratan yang sama
berlaku untuk kebenaran teknis dari aplikasi, penggunaan Web aplikasi dengan
kelompok pengguna heterogen pada sejumlah besar platform mengarah ke pengujian
khusus persyaratan. Hal ini sulit untuk memperkirakan jumlah pengguna untuk
aplikasi Web. Faktor penting lainnya untuk keberhasilan aplikasi Web misalnya,
kegunaan, ketersediaan, browser kompatibilitas, keamanan, aktualitas, dan
efisiensi, juga harus diperhitungkan dalam tes awal.
Strategi Pengujian
Menurut
tahap pembangunan yang berbeda di mana dapat menghasilkan hasil yang diuji,
mengidentifikasi tingkat uji untuk memfasilitasi pengujian hasil ini antara
lain:
· Tes
Unit : menguji unit terkecil yang dapat diuji (kelas, halaman Web, dll), tidak
tergantung pada Unit pengujian yang telah dilakukan oleh pengembang selama
implementasi.
· Tes
Integrasi: mengevaluasi interaksi antara unit yang berbeda dan terpisah diuji
oleh mereka yang telah terintegrasi.
· Tes
Sistem: menguji kesempurnaan, perpaduan sistem.
· Tes
Penerimaan: mengevaluasi sistem kerja sama dengan atau di bawah naungan klien
dalam suatu lingkungan yang berasal paling dekat dengan lingkungan produksi.
· Tes
Beta : biarkan pengguna yang bersahabat bekerja dengan produk versi awal dengan
tujuan untuk memberikan umpan balik awal.
Poin-poin
berikut menguraikan spesifik yang paling penting dan tantangan dalam pengujian
aplikasi web berdasarkan karakteristik aplikasi :
· Kesalahan
“isi” sering ditemukan hanya dengan manual mahal atau tindakan organisasi,
misalnya, oleh proofreading.
· Ketika
pengujian struktur hypertext, kita harus memastikan bahwa halaman terhubung
dengan benar. Selain itu, semua link harus menunjuk ke halaman yang sudah ada.
· Besarnya
perangkat dan karakteristik yang berbeda (multi-platform) merupakan tantangan
lain.
· Tantangan
utama adalah untuk saling mengenal ketergantungan budaya. Misalnya, membaca
pesanan dalam budaya yang berbeda (misalnya, Arab, Cina) menyiratkan perlunya
navigasi tertentu di browser.
·
Aplikasi
Web terdiri dari sejumlah komponen perangkat lunak yang berbeda (misalnya, web
server, database, middleware) dan sistem terintegrasi (misalnya, sistem ERP,
sistem manajemen konten), yang sering disediakan oleh vendor yang berbeda, dan
dilaksanakan dengan teknologi yang berbeda.
Teknik dan Metode Pengujian
a.
Pengujian
Link
Untuk
menguji penge-link-an halaman yang benar (pemeriksaan link), semua link yang
sistematis diikuti dimulai pada sebuah halaman awal, dan kemudian dikelompokkan
dalam grafik link (peta situs).
b.
Pengujian
Browser
Selama
pengujian ini, seseorang harus mengajukan pertanyaan-pertanyaan berikut:
·
Apakah
aplikasi Web dikelola dengan benar, atau bisa menyatakan tidak konsisten
terjadi ketika menavigasi langsung ke halaman, misalnya, dengan menggunakan
browser tombol “Back”?
·
Dapatkah
sebuah halaman Web (yang dihasilkan secara dinamis) akan bookmarked selama
transaksi, dan dapatkah pengguna menavigasi ke halaman selanjutnya tanpa harus
memasukkan nama pengguna dan password untuk login?
·
Bagaimana
aplikasi Web bereaksi ketika browser memiliki cookies atau bahasa script
dinonaktifkan?
c.
Pengujian
kegunaan
Mengevaluasi
kemudahan desain Web yang berbeda, tata letak keseluruhan, dan navigasi dari
aplikasi Web oleh satu set pengguna yang representatif.
d.
beban,
stres, dan Pengujian kontinyu
·
Sebuah
load test memeriksa apakah sistem memenuhi waktu respon yang dibutuhkan dan
seluruh kebutuhan.
·
Sebuah
tes stres memeriksa apakah sistem bereaksi dengan cara yang dikontrol dalam
“situasi stres” atau tidak.
·
Pengujian
terus menerus berarti bahwa sistem tersebut dilakukan selama periode waktu yang
panjang untuk menemukan “membahayakan” kesalahan.
e.
Pengujian
Keamanan
·
Kerahasiaan:
Siapa yang dapat mengakses data, mengubah, dan menghapus data?
·
Otorisasi:
Bagaimana dan di mana hak akses dikelola? Apakah data dienkripsi
semua?Bagaimana data dienkripsi?
·
Otentikasi:
Bagaimana otentikasi pengguna atau server sendiri?
·
Akuntabilitas:
Bagaimana mengakses login?
·
Integritas:
Bagaimana informasi yang dilindungi dari yang berubah selama transmisi?
·
Pengembangan
Tes-driven
Sesuai
namanya, pengembangan test-driven didorong oleh (otomatis) tes, yang dibuat
sebelum coding. Baru ditulis kode jika tes gagal dibuat sebelumnya, yaitu
pengembang harus menulis tes sebelum mereka melanjutkan ke pelaksanaan
(refactoring).
Tujuan
dari pengujian perangkat lunak dibagi menjadi 2 yaitu:
1.
Langsung
·
Mengidentifikasi error sebanyak-banyaknya pada sebuah perangkat
lunak.
·
Melakukan tindakan koreksi pada error-error yang telah
teridentifikasi di dalam perangkat lunak dan melakukan pengujian ulang,
sehingga kualitas perangkat lunak dapat dikategorikan sebagai acceptable.
·
Melakukan pengujian secara efektif dan efisien sesuai budget dan
waktu yang disediakan.
2.
Tidak Langsung
Sebagai sebuah dokumentasi yang
dapat dijadikan acuan untuk digunakan dalam melakukan pencegahan terjadinya
error serupa (error prevention).
SandBoxie
Software SandBoxie adalah software yang saya gunakan untuk menguji
aplikasi. Untuk sistem operasi Windows saja aplikasi freeware Sandboxie
menyediakan "bak pasir" aman bagi Anda untuk menguji software baru
tanpa membuat perubahan permanen pada sistem Anda.
Sandboxie sangat mirip Altiris SVS (software yang menguji suatu
aplikasi lainnya). Salah satu fitur yang sangat besar Sandboxie adalah
sandboxing cepat dari browser Anda, yang -- selain memberikan Anda sebuah sesi
browsing benar-benar aman -- memungkinkan Anda menjalankan contoh kedua dari
Firefox. Itu berarti Anda dapat menjalankan dua profil pada saat yang sama
(sesuatu yang dilakukan banyak pengguna secara semi-rutin). Baik Sandboxie dan
Altiris SVS adalah pilihan bagus untuk menguji aplikasi sebelum Anda
benar-benar menginstal dan untuk browsing internet dengan hampir keselamatan
lengkap, jadi jika Anda belum mencoba virtualisasi sebagai tempat tidur
pengujian, direkomendasikan untuk mencoba software ini. Sandboxie berjalan
program-program anda di ruang terisolasi yang mencegah mereka dari membuat
perubahan permanen ke program lain dan data di komputer Anda.
Panah merah menunjukkan perubahan yang mengalir dari sebuah
program berjalan ke dalam komputer Anda. Kotak berlabel Hard disk (tidak
sandbox) menunjukkan perubahan dengan sebuah program berjalan normal. Kotak
berlabel Hard disk (dengan sandbox) menunjukkan perubahan dengan sebuah program
berjalan di bawah Sandboxie. Animasi ini menggambarkan bahwa Sandboxie mampu
mencegat perubahan dan mengisolasi mereka di dalam bak pasir, digambarkan sebagai
sebuah persegi panjang kuning. Ini juga menggambarkan bahwa pengelompokan
perubahan bersamaan memudahkan untuk menghapus semua dari mereka sekaligus.
Keuntungan
menggunakan Sandboxie :
·
Secure Web Browsing: Menjalankan browser Web Anda di bawah perlindungan
Sandboxie berarti bahwa semua perangkat lunak berbahaya didownload oleh browser
yang terperangkap dalam kotak pasir dan dapat dibuang dengan mudah nantinya.
·
Enhanced Privacy: Browsing history, cookies, dan file-file
sementara cache dikumpulkan saat browsing Web tinggal di kotak pasir dan tidak
bocor ke Windows.
Berikut tampilan sandboxie yang akan muncul pada PC anda:
Sumber: