Pengujian sistem berbasis web Dalam pengembangan sistem berbasis Web, jika proses yang ketat kurang, kita mungkin menghadapi beberapa masalah serius dalam proses pengembangan, penerbitan, penerapan dan pemeliharaan Web, dan kemungkinan kegagalannya tinggi. . Terlebih lagi, ketika sistem berbasis web menjadi semakin kompleks, kegagalan satu proyek dapat menyebabkan banyak masalah. Ketika hal ini terjadi, kepercayaan kita terhadap Web dan Internet mungkin akan terguncang dan menyebabkan krisis Web. Selain itu, krisis Web mungkin lebih serius dan meluas dibandingkan krisis perangkat lunak yang dihadapi oleh pengembang perangkat lunak.
Dalam proses rekayasa Web, pengujian, konfirmasi dan penerimaan sistem berbasis Web merupakan tugas yang penting dan menantang. Pengujian sistem berbasis web berbeda dengan pengujian perangkat lunak tradisional. Pengujian ini tidak hanya perlu memeriksa dan memverifikasi apakah sistem berjalan sesuai dengan persyaratan desain, tetapi juga menguji apakah tampilan sistem pada browser pengguna yang berbeda sudah sesuai. Penting juga untuk melakukan pengujian keamanan dan kegunaan dari perspektif pengguna akhir. Namun, ketidakpastian Internet dan media Web membuat pengujian sistem berbasis Web menjadi sulit. Oleh karena itu, kita harus meneliti metode dan teknik baru untuk menguji dan mengevaluasi sistem berbasis web yang kompleks. Siklus rilis perangkat lunak umum dihitung dalam hitungan bulan atau tahun, sedangkan siklus rilis aplikasi web dihitung dalam hitungan hari atau bahkan jam.
Penguji web harus menghadapi siklus rilis yang lebih pendek, dan penguji serta manajer pengujian dihadapkan pada transisi dari pengujian struktur C/S tradisional dan lingkungan kerangka kerja ke pengujian sistem aplikasi Web yang berubah dengan cepat.
1. Pengujian Fungsional
1. Pengujian Tautan Tautan adalah fitur utama sistem aplikasi Web. Tautan merupakan sarana utama untuk berpindah antar halaman dan memandu pengguna ke halaman dengan alamat yang tidak diketahui. Pengujian tautan dapat dibagi menjadi tiga aspek. Pertama, uji apakah semua tautan benar-benar tertaut ke halaman tertaut seperti yang ditunjukkan; kedua, uji apakah halaman tertaut itu ada, dan terakhir, pastikan tidak ada halaman yatim piatu di sistem aplikasi web tautan yang menunjuk ke halaman tersebut, yang hanya dapat diakses jika Anda mengetahui alamat URL yang benar. Pengujian tautan dapat diotomatisasi dan ada banyak alat yang tersedia untuk ini. Pengujian tautan harus diselesaikan selama fase pengujian integrasi, yaitu pengujian tautan dilakukan setelah semua halaman dari keseluruhan sistem aplikasi Web dikembangkan.
2. Pengujian formulir Ketika pengguna mengirimkan informasi ke administrator sistem aplikasi web, mereka perlu menggunakan operasi formulir, seperti registrasi pengguna, login, pengiriman informasi, dll. Dalam hal ini, kita harus menguji integritas operasi pengiriman untuk memverifikasi kebenaran informasi yang dikirimkan ke server. Misalnya: apakah tanggal lahir dan pekerjaan yang diisi pengguna sudah sesuai, apakah provinsi dan kota yang diisi sesuai, dll. Jika nilai default digunakan, verifikasi kebenaran nilai default. Jika formulir hanya dapat menerima nilai tertentu yang ditentukan, ujilah juga. Misalnya: hanya karakter tertentu yang dapat diterima. Anda dapat melewati karakter ini selama pengujian untuk melihat apakah sistem akan melaporkan kesalahan.
3. Pengujian Cookie Cookie biasanya digunakan untuk menyimpan informasi pengguna dan operasi pengguna dalam suatu sistem aplikasi. Ketika pengguna menggunakan Cookie untuk mengakses sistem aplikasi, server Web akan mengirimkan informasi tentang pengguna dan menyimpan informasi tersebut dalam bentuk Cookie. Di komputer klien, ini dapat digunakan untuk membuat halaman dinamis dan kustom atau menyimpan informasi seperti login. Jika sistem aplikasi web menggunakan Cookies, Anda harus memeriksa apakah Cookies dapat berfungsi dengan baik. Isi pengujian dapat mencakup apakah cookie berfungsi, apakah cookie disimpan sesuai waktu yang dijadwalkan, apa dampak penyegaran terhadap cookie, dll.
4. Pengujian Bahasa Desain Perbedaan versi bahasa desain web dapat menyebabkan masalah serius di sisi klien atau server, seperti versi HTML mana yang akan digunakan. Masalah ini sangat penting ketika mengembangkan dalam lingkungan terdistribusi, dimana pengembang tidak semuanya bekerja sama. Selain masalah versi HTML, bahasa skrip yang berbeda seperti Java, JavaScript, ActiveX, VBScript atau Perl juga perlu diverifikasi.
5. Pengujian basis data Dalam teknologi aplikasi Web, basis data memainkan peran penting. Basis data menyediakan ruang untuk pengelolaan, pengoperasian, kueri, dan realisasi permintaan pengguna untuk penyimpanan data sistem aplikasi Web. Dalam aplikasi web, tipe database yang paling umum digunakan adalah database relasional, yang dapat menggunakan SQL untuk memproses informasi. Dalam sistem aplikasi Web yang menggunakan database, umumnya ada dua jenis kesalahan yang mungkin terjadi, yaitu kesalahan konsistensi data dan kesalahan keluaran. Kesalahan konsistensi data terutama disebabkan oleh kesalahan formulir informasi yang dikirimkan oleh pengguna, sedangkan kesalahan keluaran terutama disebabkan oleh masalah kecepatan jaringan atau desain program. Untuk kedua situasi ini, pengujian dapat dilakukan secara terpisah.
2. Uji kinerja
1. Uji kecepatan koneksi
Kecepatan koneksi pengguna ke sistem aplikasi Web berubah sesuai dengan cara mereka mengakses Internet. Mereka dapat melakukan panggilan melalui telepon atau menggunakan akses Internet broadband. Pengguna dapat menunggu lebih lama saat mengunduh suatu program, namun tidak saat sekadar mengunjungi suatu halaman. Jika waktu respon sistem web terlalu lama (misalnya lebih dari 5 detik), pengguna akan keluar karena tidak sabar menunggu. Selain itu, beberapa halaman memiliki batasan waktu tunggu. Jika kecepatan respons terlalu lambat, pengguna mungkin perlu masuk lagi sebelum mereka sempat menelusuri konten. Selain itu, jika kecepatan koneksi terlalu lambat, hal ini juga dapat menyebabkan hilangnya data dan menghalangi pengguna untuk mendapatkan halaman sebenarnya.
2. Pengujian beban
Pengujian beban adalah mengukur kinerja sistem Web pada tingkat beban tertentu untuk memastikan bahwa sistem Web dapat bekerja secara normal sesuai persyaratan. Tingkat beban dapat berupa jumlah pengguna yang mengakses sistem Web pada waktu yang sama pada waktu tertentu, atau jumlah pemrosesan data online. Misalnya: Berapa banyak pengguna yang dapat dibolehkan oleh sistem aplikasi Web untuk online pada saat yang sama? Jika jumlah ini terlampaui, apa yang akan terjadi? Bisakah sistem aplikasi Web menangani sejumlah besar permintaan pengguna untuk halaman yang sama
? pengujian
Pengujian beban harus diatur dalam sistem Web Setelah rilis, ujilah di lingkungan jaringan yang sebenarnya. Karena karyawan internal suatu perusahaan, terutama anggota tim proyek, selalu terbatas, dan jumlah permintaan yang dapat ditangani oleh sistem Web pada saat yang sama akan jauh melebihi batas ini, sehingga hasilnya hanya akan benar jika dibuat melalui Internet. dan menerima pengujian beban. Melakukan stress test mengacu pada penghancuran sistem aplikasi web dan menguji respons sistem. Stress pengujian adalah untuk menguji keterbatasan sistem dan kemampuan pemulihan kesalahan, yaitu untuk menguji apakah sistem aplikasi web akan crash dan dalam keadaan apa sistem akan crash. Peretas sering kali memberikan muatan data palsu hingga sistem aplikasi web mogok, dan kemudian mendapatkan akses saat sistem dihidupkan ulang. Area pengujian stres meliputi formulir, login, dan halaman transfer informasi lainnya.
3. Pengujian kegunaan
1. Uji navigasi Navigasi menjelaskan cara pengguna beroperasi dalam suatu halaman, antara kontrol antarmuka pengguna yang berbeda, seperti tombol, kotak dialog, daftar dan jendela, dll.; atau antara halaman koneksi yang berbeda. Anda dapat menentukan apakah aplikasi Web mudah dinavigasi dengan mempertimbangkan pertanyaan-pertanyaan berikut: Apakah navigasi intuitif? Apakah bagian utama sistem Web dapat diakses dari halaman beranda? Apakah sistem Web memerlukan peta situs, mesin pencari, atau navigasi lainnya bantu? Pada halaman Menempatkan terlalu banyak informasi sering kali mempunyai efek sebaliknya dari yang diharapkan. Pengguna sistem aplikasi web cenderung berorientasi pada tujuan dan dengan cepat memindai sistem aplikasi web untuk melihat apakah ada informasi yang memenuhi kebutuhan mereka. Hanya sedikit pengguna yang bersedia meluangkan waktu untuk mengenal struktur sistem aplikasi Web. Oleh karena itu, bantuan navigasi sistem aplikasi Web harus seakurat mungkin. Aspek penting lainnya dari navigasi adalah apakah struktur halaman, navigasi, menu, dan gaya koneksi sistem aplikasi Web konsisten. Pastikan pengguna secara intuitif mengetahui apakah ada konten dalam sistem aplikasi web dan di mana konten tersebut berada. Setelah tingkat sistem aplikasi Web ditentukan, perlu untuk mulai menguji fungsi navigasi pengguna. Biarkan pengguna akhir berpartisipasi dalam pengujian ini, dan efeknya akan lebih jelas.
2. Tes grafis
Dalam sistem aplikasi Web, gambar dan animasi yang sesuai tidak hanya memainkan peran periklanan, tetapi juga mempercantik halaman. Grafik sistem aplikasi Web dapat mencakup gambar, animasi, batas, warna, font, latar belakang, tombol, dll.
Isi dari pengujian grafis antara lain:
(1) Pastikan grafik mempunyai tujuan yang jelas, dan jangan menumpuk gambar atau animasi secara acak untuk menghindari pemborosan waktu transmisi. Ukuran gambar sistem aplikasi web harus sekecil mungkin, dan harus dapat menjelaskan sesuatu dengan jelas, biasanya menghubungkan ke halaman tertentu.
(2) Verifikasi apakah gaya font semua halaman konsisten.
(3) Warna latar belakang harus sesuai dengan warna font dan warna latar depan.
(4) Ukuran dan kualitas gambar juga merupakan faktor yang sangat penting, dan kompresi JPG atau GIF umumnya digunakan.
3. Pengujian konten
Pengujian konten digunakan untuk menguji kebenaran, keakuratan dan relevansi informasi yang disediakan oleh sistem aplikasi Web. Keakuratan informasi mengacu pada apakah informasi tersebut dapat diandalkan atau salah informasi. Misalnya, dalam daftar harga produk, harga yang salah dapat menyebabkan masalah keuangan atau bahkan menimbulkan perselisihan hukum; keakuratan informasi mengacu pada apakah terdapat kesalahan tata bahasa atau ejaan. Tes semacam ini biasanya dilakukan dengan menggunakan beberapa perangkat lunak pengolah kata, seperti menggunakan fungsi "Pinyin dan Pemeriksaan Tata Bahasa" pada Microsoft Word; pada halaman saat ini, yaitu, Yang disebut "daftar artikel terkait" di situs Web umum.
4. Uji antarmuka keseluruhan
Antarmuka keseluruhan mengacu pada desain struktur halaman seluruh sistem aplikasi Web, yang memberikan rasa integritas kepada pengguna. Misalnya: Apakah pengguna merasa nyaman saat menjelajah sistem aplikasi Web? Apakah mereka secara intuitif mengetahui di mana informasi yang mereka cari berada? Apakah gaya desain seluruh sistem aplikasi Web konsisten? untuk pengguna akhir. Umumnya, sistem aplikasi Web berbentuk kuesioner di beranda untuk memperoleh umpan balik dari pengguna akhir. Untuk semua pengujian kegunaan, diperlukan partisipasi pihak eksternal (orang yang tidak mempunyai atau sedikit kontak dengan pengembangan sistem aplikasi Web), terutama pengguna akhir.
4. Uji kompatibilitas klien
1. Uji platform
Ada banyak jenis sistem operasi yang berbeda di pasaran, yang paling umum adalah Windows, Unix, Macintosh, Linux, dll. Sistem operasi mana yang digunakan oleh pengguna akhir sistem aplikasi web bergantung pada konfigurasi sistem pengguna. Dengan cara ini, masalah kompatibilitas dapat terjadi. Aplikasi yang sama mungkin berjalan normal di beberapa sistem operasi, tetapi mungkin gagal dijalankan di sistem operasi lain. Oleh karena itu, sebelum sistem Web dirilis, sistem Web perlu diuji kompatibilitasnya pada berbagai sistem operasi.
2. Tes browser
Browser adalah komponen inti klien Web. Browser dari produsen berbeda memiliki dukungan berbeda untuk Java, JavaScript, ActiveX, plug-in, atau spesifikasi HTML berbeda. Misalnya ActiveX produk Microsoft dan dirancang untuk Internet Explorer, JavaScript produk Netscape, Java produk Sun, dan seterusnya. Selain itu, gaya bingkai dan hierarki muncul secara berbeda di browser yang berbeda, atau tidak sama sekali. Browser yang berbeda memiliki keamanan dan pengaturan Java yang berbeda. Salah satu cara untuk menguji kompatibilitas browser adalah dengan membuat matriks kompatibilitas. Dalam matriks ini, kemampuan beradaptasi browser dari produsen berbeda dan versi berbeda terhadap komponen dan pengaturan tertentu diuji.
5. Pengujian keamanan
Area pengujian keamanan sistem aplikasi Web terutama meliputi:
(1) Sistem aplikasi Web saat ini pada dasarnya mengadopsi metode mendaftar terlebih dahulu dan kemudian masuk. Oleh karena itu, penting untuk menguji nama pengguna dan kata sandi yang valid dan tidak valid, memperhatikan apakah peka huruf besar-kecil, membatasi jumlah upaya, apakah Anda dapat menelusuri halaman secara langsung tanpa login, dll.
(2) Apakah sistem aplikasi Web memiliki batasan waktu habis, yaitu, jika pengguna tidak mengklik halaman mana pun dalam jangka waktu tertentu (misalnya, 15 menit) setelah masuk, apakah ia perlu masuk lagi untuk menggunakan itu biasanya.
(3) Untuk menjamin keamanan sistem aplikasi Web, file log sangat penting. Penting untuk menguji apakah informasi yang relevan ditulis ke dalam file log dan apakah dapat dilacak.
(4) Saat menggunakan soket aman, uji apakah enkripsinya benar dan periksa integritas informasinya.
(5) Skrip sisi server sering kali merupakan celah keamanan, dan celah ini sering dieksploitasi oleh peretas. Oleh karena itu, kami juga perlu menguji masalah bahwa skrip tidak dapat ditempatkan dan diedit di sisi server tanpa izin.
6. Ringkasan
Artikel ini membahas metode pengujian sistem berbasis web dari aspek fungsi, kinerja, kegunaan, kompatibilitas klien, keamanan, dll. Pengujian sistem berbasis web memiliki persamaan dan perbedaan dengan pengujian perangkat lunak tradisional, yang menimbulkan tantangan baru dalam pengujian perangkat lunak. Pengujian sistem berbasis web tidak hanya perlu memeriksa dan memverifikasi apakah sistem beroperasi sesuai dengan persyaratan desain, tetapi juga mengevaluasi apakah tampilan sistem pada browser pengguna yang berbeda sudah sesuai. Penting juga untuk melakukan pengujian keamanan dan kegunaan dari perspektif pengguna akhir.