Skip to main content

Pertemuan 13 - Pengujian Aplikasi Web

 Hi, Assalamualaikum Warahmatulahi Wabarakatuh.

Bismillahirahmanirahim.

Kali ini aku bakal share penjelasan materi mata kuliah RPL Pertemuan 13 yaitu mengenai Pengujian Perangkat Lunak.

Semoga Bermanfaat! ✨

1.     Konsep Pengujian

Meruoakan serangkaian aktivitas yang tujuannya untuk menemukan kesalahan dalam isi, fungsi, kegunaan, kemampuan navigasi, kinerja, kapasitas dan keamanan aplikasi web sebelum aplikasi-aplikasi web yang dibuat dikirimkan ke end user. Hal ini penting karena jika end user menemukan kesalahan yang membuat mereka meragukan aplikasi web tersebut, mereka akan pergi ke web lain untuk mencari isi dan informasi. Langkahnya dimulai dengan fokus pada aspek aplikasi web yang terlihat oleh user dan berlanjut pada pengujian yang terkait dengan teknologi dan infrastruktur.

2.     Konsep Pengujian Aplikasi Web

Pengujian white box (glass box testing) ialah sebuah filosofi perancangan test case yang menggunakan struktur kontrol.

Test case pada white box: Menjamin bahwa semua jalur independen di dalam modul telah dieksekusi sedikitnya satu kali, Melaksanakan semua keputusan logis pada sisi benar dan salah, Melaksanakan semua perulangan (loop) yang memenuhi semua batas operasional, Melakukan struktur data internal untuk memastikan kebenarannya.

a.     Dimensi Kualitas

Kualitas dievaluasi dengan menerapkan serangkaian tinjauan teknis yang melihat berbagai elemen dari model perancangan dan dengan menerapkan proses pengujian. Adapun atribut dimensi kualitas:

*      Isi (content) : Dievaluasi di tingkat sintak dan semantik. Pada tingkat sintak dokumen berbasis teks diuji dalam hal ejaan, tanda baca dan tata bahasa. Pada tingkat semantik aspek yang dinilai adalah kebenaran informasi yang disajikan, konsistensi di seluruh objek isi dan objek terkait, dan rendahnya ambiguitas

*      Fungsi : Diuji untuk menemukan kesalahan yang menunjukkan ketidaksesuaian dengan persyaratan customer

*      Struktur : Dinilai untuk memastikan bahwa aplikasi web benarbenar menyediakan isi dan fungsi aplikasi web

*      Kegunaan : Diuji untuk memastikan bahwa setiap kategori user didukung oleh antarmuka yang user friendly serta menerapkan semua sintak dan semantik navigasi yang diperlukan

*      Kemampuan untuk dapat dinavigasi : Diuji untuk memastikan bahwa semua sintak dan semantik navigasi dilakukan untuk menemukan kesalahan, seperti link yang salah dan dead link

*      Kinerja : Diuji di bawah berbagai kondisi operasi, konfigurasi, dan loading

*      Kompatibilitas : Diuji dengan menjalankan aplikasi web dalam berbagai konfigurasi host yang berbeda baik di sisi server maupun client

*      Interoperabilitas : Diuji untuk memastikan bahwa aplikasi web berantarmuka dengan benar dengan aplikasi lain dan database

*      Keamanan : Diuji dengan menilai kerentanan potensial

Kesalahan Atribut pada Pengujian Aplikasi Web :

*      Pengujian web mengungkap masalah yang didapatkan pertama kali di sisi client, melalui antarmuka yang implementasinya pada sebuah browser atau perangkat komunikasi pribadi

*      Aplikasi web diimplementasikan pada beberapa konfigurasi dan lingkungan yang berbeda, kemungkinan sulit untuk menemukan kesalahan di luar lingkungan tempat kesalahan pertama kali ditemukan

*      Kesalahan akibat kode program yang tidak tepat (misal HTML), seperti kesalahan penelusuran dokumen

*      Kesalahan pada client-server sulit dilacak di tiga lapisan: client, server, atau jaringan

*      Beberapa kesalahan yang berada di lingkungan operasi yang bersifat statis, sementara yang lain terkait dengan ligkungan operasi yang bersifat dinamis

b.     Strategi Pengujian

Langkahnya yaitu:

*       Model konten untuk aplikasi web ditinjau untuk menemukan kesalahan

*       Model antarmuka ditinjau untuk memastikan bahwa semua use-case dapat diakomodasi

*       Model perancangan ditinjau untuk mengungkap kesalahan navigasi

*       Antarmuka pengguna diuji untuk menggungkap kesalahan dalam presentasi dan/atau mekanik navigasi

*       Komponen fungsional diuji untuk setiap unit Langkah-Langkah Strategi Pengujian (Lanjutan)

*       Navigasi untuk seluruh arsitektur diuji

*       Aplikasi web diimplementasikan dalam berbagai konfigurasi lingkungan yang berbeda dan diuji kompatibilitasnya

*       Pengujian keamanan dilakukan dalam upaya untuk mengungkap kelemahan aplikasi web

*       Pengujian kinerja dilakukan

*       Aplikasi web diuji oleh end user, hasil interaksinya dievaluasi untuk menemukan kesalahan isi dan navigasi, keamanan, keandalan, dan kinerja aplikasi web

c.     Perencanaan Pengujian

Sebuah rencana aplikasi web mengidentifikasikan:

*       Himpunan tugas-tugas yang diterapkan ketikapengujian dimulai

*       Produk kerja yang dihasilkan ketika setiap tugas pengujian dijalankan

*      Cara dimana hasil pengujian dievaluasi, dicatat, dan digunakan kembali saat pengujian regresi dilakukan

 

3.     Pengujian Isi

Pengujian isi menggabungkan baik peninjauan maupun pembuatan test case yang dapat dilaksanakan:

a.     Tujuan Pengujian Isi

Untuk mengungkap kesalahan sintak dengan memeriksa ejaan dan tata bahasa otomatis, Untuk mengungkap kesalahan semantik yang fokus pada informasi pada setiap isi objek, Untuk mencari kesalahan dalam pengaturan atau struktur isi dalam susunan dan hubungan yang tepat.

b.     Pengujian Basis Data

Pengujian basis data menjadi sulit dikarenakan : Permintaan dari client jarang disajikan dalam bentuk yang dapat dimasukkan ke sistem manajemen basis data, Basis data dapat berada jauh dari server, Data mentah yang diperoleh dari basis data harus dikirim ke server aplikasi web dan diformat dengan benar untuk pengiriman selanjutnya kepada client dan Objek isi yang bersifat dinamis harus dikirim ke client dalam bentuk yang dapat ditampilkan kepada end user.

Pengujian basis data harus memastikan bahwa: Informasi yang valid dilewatkan antara client dan server dari lapisan antarmuka, Proses aplikasi web menuliskan ekstraksi atau format data user dengan baik dan benar, Data user diberikan dengan tepat untuk fungsi transformasi data pada sisi server yang membentuk query yang sesuai dan Query yang dilewatkan ke layer manajemen data yang berkomunikasi dengan rutin-rutin akses basis data terletak di komputer lain.

4.     Pengujian Antar Muka

Untuk memastikan bahwa script yang benar dibangun untuk setiap permintaan user dan benar dikirimkan ke server.

Verifikasi dan validasi antarmuka user terjadi pada: Model antarmuka memastikan bahwa telah sesuai dengan kebutuhan stakeholder dan elemen lain, Model perancangan antarmuka ditinjau untuk memastikan bahwa kriteria kualitas generik telah ditetapkan untuk semua antarmuka, Selama pengujian fokus pada interaksi user.

a.       Strategi Pengujian Antarmuka

Langkah-langkahnya yaitu: 1. Fitur-fitur antarmuka diuji seperti jenis huruf, warna, gambar, border, tabel dll 2. Mekanisme antarmuka diuji dengan cara yang sama dengan pengujian unit, misalnya pengujian untuk keranjang belanja pada e-commerce, isi streaming, penulisan script dll 3. Mekanisme antarmuka diuji dalam konteks penggunaan use case untuk kategori user tertentu 4. Antarmuka lengkap diuji terhadap test case terpilih 5. Antarmuka diuji dalam berbagai lingkungan.

b.      Mekanisme Pengujian Antarmuka :

*       Formulir. Pengujian untuk memastikan: a. Label formulir dapat diidentifikasikan secara visual b. Server menerima semua informasi form c. Default yang tepat saat user tidak memilih dari menu pull down atau dari tombol d. Fungsi-fungsi perambah seperti tanda panah back tidak merusak data yang diisikan ke dalam form e. Script yang memeriksa kesalahan input data f. Lebar kolom dan jenis data yang tepat g. Mencegah user memasukkan string text lebih panjang dari jumlah max. yang telah ditetapkan h. Menu pull down diurutkan dan dapat dipahami user i. Auto-fill tidak mengarah ke kesalahan input data j. Key tab memicu perpindahan di antara kolom

*       Link. Setiap link navigasi diuji untuk memastikan bahwa objek isi atau fungsi yang tepat dapat dicapai

*       Client-side scripting. Pengujian dilakukan untuk menemukan kesalahan saat script dijalankan

*       HTML dinamis. Dijalankan untuk memastikan bahwa tampilan dinamis sudah benar

*       Pop-up windows. Memastikan bahwa a. Pop-up diukur dan diposisikan dengan benar b. Pop-up tidak menutupi jendela aplikasi web asli c. Perancangan pop-up konsisten dengan perancangan antarmuka d. Scroll bar dan mekalisme kontrol lainnya yang ditambahkan ke pop-up diletakkan dengan benar

*       Script CGI. Pengujian kotak hitam dilakukan dengan penekanan pada integritas data saat dilewatkan ke script CGI

*       Streaming content. Pengujian menunjukkan bahwa data streaming terbarukan, ditampilkan dengan benar dan dapat dihentikan tanpa kesalahan dan restart tanpa kesulitan

*       Mekanisme aplikasi antarmuka spesifik. Pengujian sesuai dengan daftar fungsi dan fitur yang didefinisikan pada antarmuka

c.       Pengujian Kompatibilitas

Aplikasi web harus dapat dijalankan pada komputer yang berbeda, berupa: Perangkat tampilan, Sistem Operasi, Browser dan Kecepatan koneksi jaringan.

Langkah-langkah uji kompatibilitas: 1. Mendefinisikan sekumpulan konfigurasi komputasi di sisi client, mengidentifikasi platform, perangkat layar, sistem operasi, browser yang tersedia, kecepatan koneksi internet, dll. 2. Melakukan serangkaian uji validasi kompatibilitas berupa pengujian navigasi, pengujian kinerja, dan pengujian keamanan.

5.     Pengujian Navigasi

Tugas pengujian navigasi adalah Memastikan bahwa semua mekanisme yang memungkinkan pengguna aplikasi web melakukan penelusuran melalui aplikasi web dan Untuk memvalidasi bahwa setiap unit semantik navigasi dapat dicapai oleh kategori pengguna yang tepat.

Pengujian Sintaks Navigasi

*      Link Navigasi Mekanisme menyertakan link internal dalam aplikasi web dan link eksternal ke aplikasi web lain, dan anchor pada halaman web tertentu

*      Redirect Link beraksi saat user meminta URL yang tidak ada atau memilih sebuah link yang isinya telah dihapus atau namanya telah berubah

*      Bookmark Memastikan bahwa judul halaman yang berarti dapat diekstraksi saat bookmark dibuat

*      Frame and frameset: Frameset berisi beberapa frame dan memungkinkan untuk menampilkan beberapa halaman web secara bersamaan. Oleh karena itu harus diuji dalam hal isi, tata letak layar dan ukuran yang tepat, kinerja download, dan kompatibilitas browser

*      Site map Berisi daftar isi lengkap pada semua halaman web, setiap entry harus diuji untuk memastikan bahwa link membawa user membaca isi/fungsionalitas yang tepat

*      Search engine internal User mengetikkan kata kunci untuk menemukan isi yang diperlukan

6.     Pengujian Konfigurasi

a.     Masalah di bagian Server : Aplikasi web sepenuhnya kompatibel dengan server OS.  Berkas sistem, direktori, dan data yang terkait dibuat dengan benar saat aplikasi web dioperasikan. Keamanan sistem mengijinkan aplikasi web untuk berjalan dan melayani user tanpa gangguan atau penurunan kinerja. Aplikasi web terintegrasi secara tepat dengan perangkat lunak basis data. Script aplikasi web sisi server mengeksekusi dgn benar. Jika proxy server yang digunakan, apakah perbedaan konfigurasi telah diatasi melalui pengujian

b.     Masalah di bagian Client : Pengujian konfigurasi fokus pada kompatibilitas aplikasi web pada komponen berikut: Hardware: CPU, memori, penyimpanan, perangkat cetak, Sistem operasi, Browser: Firefox, Safari, IE, Opera, Chrome, Komponen antarmuka: Active-X, Java applet, Plug in: Quick Time, RealPlayer dan Konektivitas: kabel, DSL, Wifi.

7.     Pengujian Keamanan

Untuk menyelidiki kerentanan lingkungan di sisi client, komunikasi jaringan yang terjadi saat data dilewatkan dari client ke server, dan di lingkungan server itu sendiri.

Contoh kerentanan yang dapat terjadi: Buffer overflow, seperti memasukkan URL yang lebih panjang dari ukuran buffer, Akses tidak sah, Spoofing dan Serangan DOS.

Implementasi keamanan: Firewall, Authentication, Encryption dan Authorization.

Comments

Popular posts from this blog

Tugas 03 Web Programming - Pertemuan 6 - Semester 3

Hi, Assalamualaikum Warahmatulahi Wabarakatuh. Bismillahirahmanirahim. Kali ini aku bakal share script Tugas 03 mata kuliah Web Programming Pertemuan 6. Jika informasi ini bermanfaat bagi kalian , Please Share! Dan jika ada saran/kritik komen saja. Itu sangat membantu dan membuat semangat untuk terus berbagi dan belajar bersama 🤗 Semoga Bermanfaat! ✨ Tampilan Input & Output :     Script formregistrasi.php : <html> <head>      <title>Form Registrasi</title> </head>      <h1>Form Registrasi</h1> <form action="dataregistrasi.php" method="POST">      <br>Isi data dibawah ini :</br> <table border="0" width="500">      <tr><td>Nama</td> <td> </td> <td><input type="text"name="name" size="22"placeholder="Masukan Nama"></td>   </tr>      <tr><td>Alamat</td> <td> </td

Tugas 04 Web Programming - Pertemuan 7 - Semester 3

  Hi, Assalamualaikum Warahmatulahi Wabarakatuh. Bismillahirahmanirahim. Kali ini aku bakal share script Tugas 04 mata kuliah Web Programming Pertemuan 7. Jika informasi ini bermanfaat bagi kalian , Please Share! Dan jika ada saran/kritik komen saja. Itu sangat membantu dan membuat semangat untuk terus berbagi dan belajar bersama 🤗 Semoga Bermanfaat! ✨ Tampilan Input & Output :     Script  tugas04.php  : <html> <head>      <title>Tugas 04</title> </head> <body>      <h1><center>Rumus - Rumus</center></h1>     <form action="tugas04-2.php" method="POST"> <center><table border = "2"></center> <pre>      <td>Nilai 1</td>      <td><input name="A" type="text" id="nA" size="20" border="2" value=""/><br/></td>      </tr>      <tr>      <

Tugas 02 Web Programming - Pertemuan 3 - Semester 3

  Hi, Assalamualaikum Warahmatulahi Wabarakatuh. Bismillahirahmanirahim. Kali ini aku bakal share script Tugas 02 mata kuliah Web Programming Pertemuan 3. Jika informasi ini bermanfaat bagi kalian , Please Share! Dan jika ada saran/kritik komen saja. Itu sangat membantu dan membuat semangat untuk terus berbagi dan belajar bersama 🤗 Semoga Bermanfaat! ✨ Tampilan : Script : <html> <head>      <title>Contoh Script PHP</title> </head> <body> <?php      $nama ="Lintang Seruni Senja";      $alamat ="Jl.Badak No.02 Cimahi-Bandung";      $ttl ="Jakarta, 20 oktober 1990";      $nmr ="0812345678";           echo " Nama Saya         : $nama<br>";      echo " Alamat               : $alamat<br>";      echo " TTL                   : $ttl<br>";      echo " Telp                   : $nmr<br><p>"; ?> </body> </ht