Bayuvia's Blog

Just another WordPress.com site

Desember 6, 2010

Filed under: web engineering — bayuvia @ 7:00 am

BAB 7

PENGUJIAN APLIKASI WEB

Aplikasi perangkat lunak web bersifat heterogen dan membuatnya tidak dapat terpisahkan secara alami. Komponen komponen perangkat lunak dapat berjalan pada platform perangkat keras dan lunak yang berbeda, ditulis pada bahasa pemrograman yang berbeda, berdasarkan pada model pemrograman yang berbeda, dan menggabungkan komponen lama dan baru, dan pada komponen yang dihasilkan oleh pihak ketiga component off the shelf (COTS). Aplikasi web tunggal dapat dibangun dengan komponen yang ditulis dalam berbagai bahasa yang berbeda, mencakup prosedur, orientasi objek, interpreter, dan bahas hibrida seperti JSP.

Sifat heterogen dari perangkat lunak dan penyebaran yang terdistribusi memperkenalkan kompleksitas di dalam perangkat lunak yang harus ditangani selama pengujian. Aplikasi web mempunyai kemampuan untuk menghasilkan GUI yang berbeda sebagai respon terhadap masukan yang diberikan oleh pengguna.

PERMASALAHAN DI DALAM PENGUJIAN APLIKASI WEB

Literatur pada pengujian aplikasi web masih berupa langkah dan belum mempunyai persetujuan yang tersebar luas mengenai cara menggolongkan masalah teknis. Sebuah faktor penting yang mempengaruhi aplikasi web adalah bagaimana potongan yang berbeda dapat dikoneksikan.

Penggolongan pengujian berdasarkan koneksi:

  1. Tautan statis (HTML→HTML)
  2. Tautan dinamis (HTML→perangkat lunak)
  3. HTML diciptakan secara dinamis (perangkat lunak→HTML)
  4. User/time specific GUI (perangkat lunak + state→HTML)
  5. Transisi operasional (pengguna)
  6. Koneksi perangkat lunak
  7. Koneksi perangkat lunak off-site
  8. Koneksi dinamis

TEKNIK DAN METODE TES

Fungsionalitas

  1. Kesesuaian.
  2. Akurasi.
  3. Interoperabilitas.
  4. Pemenuhan.

Reliabilitas

  1. Keamanan.
  2. Kematangan.
  3. Toleransi kesalahan.
  4. Keterpulihan.

Usabilitas.

  1. Keterpahaman.
  2. Potensi untuk terpelajari.
  3. Operabilitas.
  4. Daya pikat.

Reliabilitas.

  1. Perilaku waktu.
  2. Penggunaan sumber daya.
  1. Usabilitas.
  1. Efisiensi.

PENGUJIAN TAUTAN

Tautan di dalam struktur navigasi hiperteks menunjuk pada node non-existing (halama, citra , dll) atau anchor yang disebut broken link yang menyajikan well-known dan kesalahan yang sering terjadi dalam aplikasi web. Untuk menguji tautan halaman yang benar (link checking), semua tautan secara sistematis diikuti pada halaman permulaan awal dan kemudian dikelompokkan di dalam grafik peta situs (site map). Ketika menjalankan link checking routine, pada umumya yang ditemukan tidak hanya tautan yang menunjuk halaman yang tidak ada, tetapi juga halaman yang tidak terhubung dengan halaman yang lainnya, yang disebut orphan page.

PENGUJIAN BROWSER

Setiap browser web menunjukkan perilaku yang berbeda tergantung pada perusahaan pembuatnya. Pengujian browser mencoba untuk menemukan kesalahan pada aplikasi web yang disebabkan oleh ketidakcocokan browser web yang berbeda.

Untuk membatasi banyaknya kombinasi dari browser, platform, pengesetan, dan berbagai faktor lain yang mempengaruhi, sekumpulan test case dapat diatur dan konfigurasi dari pengguna potensial atau pengguna yang ada perlu dianalisis.

PENGUJIAN USABILITAS

Aksesibilitas artinya bahwa orang dengan keterbatasan (misalnya, pada visual, indra pendengaran, atau kognitifnya) dapat merasa, memahami, menelusuri, dan berinteraksi dengan web.

PENGUJIAN PEMUATAN, TEGANGAN, DAN PENGUJIAN MALAR

Pengujian pemuatan, tegangan, dan pengujian malar mempunyai sasaran tes yang berbeda, yaitu:

  1. Pengujian pemuatan memverifikasi apakah sistem memenuhi waktu respon dan lewatan (throuhput) yang diperlukan.
  2. Pengujian tegangan memverifikasi apakah sistem bereaksi dengan cara yang terkontrol dalam situasi stres.
  3. Pengujian malar mempunyai arti bahwa pengujian sistem dilakukan atas periode waktu yang panjang untuk menemukan kesalahan “tersembunyi dan membahayakan”. Hanya pengujian malarlah yang dapat menyakinkan bahwa operasi dieksekusi dengan berulang-ulang atas periode waktu untuk secepatnya mereproduksi sumber daya bottleneck yang disebabkan oleh kesalahan ini, seperti halnya permasalahan kekurangan memory.

PENGUJIAN KEAMANAN

Pengujian keamanan adalah ukuran yang paling kritis untuk aplikasi web. Pengujian keamanan adalah sebuah bidang yang luas dan berhubungan dengan isu karakteristik yang berkualitas “keamanan”, yaitu:

  1. Kerahasiaan.
  2. Otorisasi.
  3. Auntentikasi.
  4. Akuntabilitas.
  5. Integritas.

Secara khusus, pengujian keamanan tidak hanya harus menemukan kerusakan yang diharapkan, tetapi juga ketidaklengkapan atau ketidakbenaran fungsionalitas, dan pada perilaku tambahan.

PENGEMBANGAN DITUNTUN TES

Pengembangan dituntun tes dijalankan dengan tes (diotomatiskan) yang diciptakan sebelum pekerjaan pengodean. Pengembangan dituntun tes me-mastikan bahwa pengembang di bawah tekanan harus benar-benar meningkatkan dan menjalankan tes otomatis yang ada sesering mungkin.

JENIS-JENIS PENGUJIAN KINERJA.

Pengujian kinerja digambarkan sebagai investigasi teknis yang dilaksanakan untuk menentukan atau memvalidasi karakteristik kecepatan (speed), skalabilitas (scalability), dan/atau stabilitas (stability) produk di bawah tes.

Jenis-jenis pengujian kinerja umum:

Pengujian kinerja.

Tujuannya: untuk menentukan atau memvalidasi kecepatan, skalabilitas, dan/atau stabilitas.

Pengujian pemuatan.

Tujuannya: untuk memverifikasi perilaku aplikasi di bawah kondisi normal dan beban sibuk.

Pengujian tegangan.

Tujuannya: untuk menentukan atau memvalidasi suatu perilaku aplikasi ketika ditekan di luar kondisi normal atau beban sibuk.

Pengujian kapasitas.

Pengujian ini digunakan untuk menentukan berapa banyak pengguna dan/atau transakasi sistem yang diberikan akan mendukung dan masih memenuhi tujuan kinerja.

MATRIKS RINGKASAN MANFAAT DENGAN JENIS PENGUJIAN KINERJA UTAMA.

Pengujian kinerja.

Manfaat pengujian kinerja:

Menentukan karakteristik kecepatan, skalabilitas dan stabilitas dari aplikasi.

Dipusatkan pada penentuan jika pengguna sistem akan dicukupi dengan karakteristik kinerja aplikasi.

Mengidentifikasi ketidaksesuaian antara kenyataan dan harapn yang terkait.

Mendukung usaha penyetelan, perencanaan kapasitas, dan optimalisasi.

Pengujian pemuatan.

Manfaat pengujian pemuatan:

  • Menentukan lewatan yang dibutuhkan beban produksi.
  • Menentukan ketercukupan untuk mendukung puncak yang diantisipasi dari lingkungan perangkat keras.
  • Mengevaluasi ketercukupan dari keseimbangan.
  • Mendeteksi isu konkurensi.

Pengujian tegangan.

Manfaat pengujian tegangan:

  • Menentukan apakah data dapat dirusak dengan sistem over-stressing.
  • Menentukan efek samping dari perangkat keras umum atau mendukung kegagalan aplikasi.
  • Membantu untuk menentukan jenis kegagalan apa yang paling berharga untuk rencana.
  • Meyakinkan bahwa vulnerabilitas keamanan tidak dibuka dengan kondisi ketegangan.

Pengujian kapasitas.

Manfaat pengujian kapasitas:

  • Menyediakan informasi tentang bagaimana beban kerja dapat ditangani untuk memenuhi kebutuhan bisnis
  • Menyediakan kecenderungan kapasitas dan pemakaian dari sistem yang ada untuk membantu perencanaan.
  • Menentukan pemakaian sekarang dan kapasitas dari sistem yang ada untuk membantu perencanaan kapasitas.