Standar Uji Perangkat Lunak - Non Functional Testing

 Assalamualaikum Wr. Wb.

Pada postingan ini saya akan membagikan sebuah materi Tipe Testing. Tujuan saya membuat postingan ini adalah untuk memenuhi Tugas Materi 7 pada Mata Perkuliahan STANDAR UJI PERANGKAT LUNAK.

Berikut adalah pembahsannya



5 Metode Pengujian Testing Jaringan

A. Pengerjian Non Functional Testing

Pengujian non-fungsional adalah pengujian aplikasi perangkat lunak atau sistem untuk persyaratan non-fungsionalnya: cara sistem beroperasi, bukan perilaku spesifik sistem itu. Ini berbeda dengan pengujian fungsional, yang menguji persyaratan fungsional yang menggambarkan fungsi sistem dan komponennya. Nama dari banyak pengujian non-fungsional sering digunakan secara bergantian karena tumpang tindih dalam cakupan antara berbagai persyaratan non-fungsional. Misalnya, kinerja perangkat lunak adalah istilah luas yang mencakup banyak persyaratan khusus seperti keandalan dan skalabilitas. .

B. Metode Pengujian Jaringan

Berikut adalah 5 metode pengujian testing jaringan:

1. Pengujian Latency

Latency adalah waktu yang dibutuhkan data dari asal sampai tujuan dengan diukur dalam satuan mili detik. Istilah mudahnya adalah delay/penundaan.

Latency berhubungan dengan seberapa banyak waktu yang dibutuhkan untuk mengirim pesan dari ujung jaringan ke ujung yang lain. Pengukuran Latency ini menggunakan aplikasi Smokeping. Pengukuran dimaksudkan untuk melihat banyak pengaksesan web tersebut. Pengukuran latency dilakukan selama satu hari.


Untuk menghitung latency, Anda bisa menggunakan tools untuk mengukur Time To First Byte (TTFB) yang ada pada 16 lokasi server yang berbeda. Perlu diketahui bahwa kabel fiber optic memiliki kecepatan internet setara dengan kecepatan cahaya 299.792.458 meter/detik, dari kecepatan tersebut dihasilkan latency sebesar 3.33 microseconds. Semakin jauh lokasi pengiriman paket data maka semakin besar pula angka latencynya. Pada dasarnya latensi bisa diukur dengan dua metode berikut:

  • Round Trip Time (RTT)
  • Time To First Byte (TTFB)


2. Pengujian Benchmark

Benchmarkadalah teknik pengetesan dengan menggunakan suatu nilai standar. Suatu program atau pekerjaanyang melakukan perbandingan kemampuan dari berbagai kerja dari beberapa peralatan dengan tujuan untukmeningkatkan kualitas pada produk yang baru. Dari hasil benchmarking, suatu organisasi dapat memperolehgambaran dalam (insight) mengenai kondisi kinerja organisasi sehingga dapat mengadopsi best practice untukmeraih sasaran yang diinginkan. Pengujian dilakukan dengan cara membandingkan produk-produk perangkatlunakmaupun perangkat kerasdengan percobaan yang sama.


Perlu kiranya perusahaan atau organisasi mengetahui kenyataan kinerjanya tersebut di sajikan dalamsuatu bentuk data yang terukur. Benchmarkingadalah alat yang dapat digunakan untuk melakukanpengukuran tingkat kinerja (performance) serta mengembangkan suatu praktek yang terbaik bagiperusahaan/organisasi.-Benchmarkingjuga akan menolong perusahaan/ organisasi dalam mengidentifikasi kekuatanoperasional dan areal wilayah untuk dilakukan perbaikan

Tujuan benchmarking yaitu menentukan kunci atau rahasia sukses dari perusahaan pesaing yang paling unggul, kemudianmengadaptasikan dan memperbaikinya secara lebih baik untuk diterapkan, yang akhirnya akanmengungguli pesaing yang di benchmarking


3. Pengujian Bandwich

Bandwidth adalah perhitungan konsumsi transfer data telekomunikasi yang dihitung dalam satuan bit per detik atau yang biasa disingkat bps yang terjadi antara komputer server dan komputer client dalam waktu tertentu dalam sebuah jaringan komputer. Pengukuran Bandwidth ini menggunakan aplikasi NTOP. Pengukuran bandwidth dilakukan agar dapat dilihat jumlah data yang ditransfer dalam pengaksesan instance yang diakses oleh user.

Bandwidth test adalah program yang mengirimkan satu atau lebih file dengan ukuran yang diketahui melalui jaringan ke komputer yang jauh (misalnya komputer Anda sendiri). Kemudian mereka akan mengukur waktu yang dibutuhkan agar file berhasil diunduh di tempat tujuan, dan dengan demikian memperoleh angka teoritis untuk kecepatan data antara dua atau lebih titik, biasanya dalam kilobit per detik (Kbps) atau megabit per detik (Mbps). Hasil bandwidth test sangat bervariasi dan terkadang menghasilkan angka yang tidak masuk akal atau tidak mungkin. Untuk itu, biasanya dianjurkan untuk melakukan tiga atau lebih bandwidth test pada interval yang berbeda untuk mendapatkan perkiraan bandwith yang masuk akal.

Faktor-faktor yang memengaruhi hasil tes meliputi:

  • Lalu lintas internet (kecepatan umumnya menurun saat volume meningkat)
  • Penundaan propagasi tidak bervariasi (dapat mengembang atau menurun secara artifisial)
  • Kebisingan pada jalur data (memiliki efek yang sangat merugikan)
  • Ukuran berkas yang digunakan untuk pengujian
  • Jumlah file yang digunakan untuk pengujian
  • Beban permintaan pada server uji saat dilakukan pengujian
  • Aktivitas geomagnetik dan / atau badai petir


Manfaat utama yang terkait dengan bandwidth test adalah dapat menentukan kekuatan jaringan atau koneksi internet. Ini juga memberi perkiraan stabilitas jaringan atau koneksi internet.


4. Sniffing Packet

Sniffer Paket atau yang juga dikenal sebagai Network Analyzers/Ethernet Sniffer ialah sebuah aplikasi yang dapat melihat lalu lintas data pada jaringan komputer. Dikarenakan data mengalir secara bolak-balik pada jaringan, aplikasi ini menangkap tiap-tiap paket dan kadang-kadang menguraikan isi dari RFC (Request for Comments) atau spesifikasi yang lain. Berdasarkan pada struktur jaringan (seperti hub atau switch), salah satu pihak dapat menyadap keseluruhan atau salah satu dari pembagian lalu lintas dari salah satu mesin di jaringan. Perangkat pengendali jaringan dapat pula diatur oleh aplikasi penyadap untuk bekerja dalam mode campur-aduk (promiscuous mode) untuk "mendengarkan" semuanya (umumnya pada jaringan kabel).

Sniffer paket dapat dimanfaatkan untuk hal-hal berikut:

  • Mengatasi permasalahan pada jaringan komputer.
  • Mendeteksi adanya penyelundup dalam jaringan (Network Intusion).
  • Memonitor penggunaan jaringan dan menyaring isi isi tertentu.
  • Memata-matai pengguna jaringan lain dan mengumpulkan informasi pribadi yang dimilikanya (misalkan password).
  • Dapat digunakan untuk Reverse Engineer pada jaringan.


Sniffing bekerja pada segmen data di layer transport dengan cara menyisipkan program jahat pada computer korban, dimana nanti program jakat tersebut akan melakukan proses sniffing sehingga data-data sensitive yang ada pada koputer korban dapat terbaca oleh sniffer.

Sniffing diklasifikasikan menjadi 2 jenis yaitu:

  • Passive Sniffing

Passive sniffing adalah tindak kejahatan penyadapan dengan tidak merubah isi dari paket data yang dikirimkan antar server dan client. Jadi Anda tidak merasa curiga karena tidak ada tanda-tanda kalau menjadi korban sniffer. Passive sniffing biasanya terjadi pada Hub, karena tugas utama Hub membagikan signal ke semua computer client, berbeda dengan fungsi switch yang memiliki fitur untuk menghindari terjadinya collision atau bentrokan dengan membaca alamat MAC Address computer client. Beberapa tools yang sering digunakan untuk passive sniffing seperti Wireshark, Tcpdump, Kismet, Ettercap, Dsniff dan lain sebagainnya.

  • Active Sniffing

Kebalikan dari passive sniffing, active sniffing adalah tindak kejahatan penyadapan dengan cara mengubah isi paket data dalam jaringan. Tindakan active sniffing yang paling sering dilakukan adalah ARP Poisoning, Man in the middle attack (MITM). Active sniffing ini biasanya dilakukan pada switch jaringan, bukan lagi pada hub. Tidak hanya pada OSI layer transport saja, sniffing ternyata bisa dilakukan pada layer application dan layer physical. Untuk sniffing pada bagian layer physical biasanya dilakukan dengan cara menyadap jaringan saluran komunikasi secara illegal.

Sniffing cara kerjanya memiliki beberapa tahap sampai paket data yang diambil bisa terbaca, nah apa saja tahapan sniffing itu? Berikut pembahasannya:

  • Collection

Cara kerja paket yang pertama adalah merubah interface dan mulai mengumpulkan semua paket data yang melalui jaringan yang sedang diawasi.

  • Conversion

Cara kerja setelah collection adalah conversion dengan cara merubah data yang sudah di collect berbentuk binary kedalam data yang lebih mudah dipahami.

  • Analysis

Cara kerja ketiga adalah menganalysis data yang sudah dikonversi kedalam blok-blok protokol berdasarkan sumber transmisi data.

  • Pengambilan Data

Cara kerja sniffing yang terakhir setelah semua dilakukan, hacker akan mengambil data tersebut.


5. Pengujian Penembusan (Penetration Testing)

Sebuah uji penetrasi adalah sebuah simulasi resmi serangan cyber pada sistem komputer, dilakukan untuk mengevaluasi keamanan sistem. Pengujian dilakukan untuk mengidentifikasi kelemahan (juga disebut sebagai kerentanan), termasuk potensi pihak yang tidak berwenang untuk mendapatkan akses ke fitur dan data sistem, serta kekuatannya, memungkinkan penilaian risiko penuh untuk diselesaikan.


Proses tersebut biasanya mengidentifikasi sistem target dan tujuan tertentu, kemudian meninjau informasi yang tersedia dan melakukan berbagai cara untuk mencapai tujuan tersebut. Masalah keamanan yang ditemukan oleh uji penetrasi harus dilaporkan ke pemilik sistem. Laporan uji penetrasi juga dapat menilai potensi dampak terhadap organisasi dan menyarankan tindakan pencegahan untuk mengurangi risiko

Dalam implementasinya, pentest dapat berguna antara lain untuk menentukan seberapa baik sebuah sistem dapat menangani serangan dunia nyata. Selain itu dapat menentukan penanggulangan yang dapat mengurangi ancaman terhadap sistem, dan untuk mengingkatkan keamanan pada aplikasi, sistem, atau jaringan yang dimiliki. Pentest juga digunakan untuk mendeteksi serangan dan merespon dengan cepat dan tepat. Sehingga secara garis besar pentest bertujuan untuk menganalisis risiko yang akan timbul dengan adanya kerentanan yang telah diindentifikasi pada tahap Vulnerability Assessment dan memberikan rekomendasi tindakan yang perlu dilakukan apabila sistem yang diuji dapat lolos dari serangan hacker.

Tahapan penetration testing:

  • Planning

Tahapan pertama adalah tahap Planning (Perencanaan). Pada tahap ini dilakukan identifikasi aturan dalam pengujian, selain itu persetujuan manajemen terkait jalannya pengujian dan ruang lingkup pengujian telah diselesaikan dan didokumentasikan, dan yang terakhir adalah menetapkan tujuan pengujian. Pada tahap ini tidak dilakukan pengujian secara teknis. Tahap perencanaan menentukan sukes atau tidaknya Penetration Testing yang dilakukan.

  • Discovery

Tahapan kedua adalah tahap Discovery (Penemuan). Pada tahap ini terdiri dari dua bagian yaitu pengumpulan informasi dan analisis potensial kerentanan (vulnerability analysis). Bagian yang pertama yaitu pengumpulan informasi terkait sistem target. Pengumpulan informasi dapat dilakukan melalui Identifikasi Port jaringan dan layanan. Selain itu teknik lain yang digunakan untuk mengumpulkan informasi terkait sistem target dapat melalui Host name dan informasi IP address, nama pegawai dan informasi kontak pegawai, sistem informasi, dan informasi aplikasi dan layanan

  • Attack

Tahapan ketiga adalah tahap Attack (Serangan). Mengeksekusi serangan adalah poin utama dalam pentest. Pada tahap ini dilakukan penentuan target, pemilihan tools, dan metode eksploit yang tepat. Analisis potensial kerentanan yang sudah diidentifikasi sebelumnya diverifikasi dengan percobaan eksploitasi. Jika berhasil, kerentanan diidentifikasi dan dianalisis peningkatan keamanan pada sistem target. Beberapa proses eksploitasi memungkinkan seorang asesor untuk mendapatkan hak akses istimewa pada sistem untuk lebih dapat identifikasi kerentanan lebih dalam. Apabila asesor membutuhkan informasi dikarenakan lingkup serangan lebih dalam, dapat kembali ke tahap Discovery (Additional Discovery) untuk pengumpulan informasi tambahan. Asesor dapat menggunakan tools tambahan pada sistem target atau jaringan untuk memfasilitasi proses pengujian.

Analisis potensial kerentanan hanya dilakukan untuk mengidentifikasi kemungkinan adanya kerentanan, namun pada tahap Attack (serangan) lebih kepada mengeksploitasi kerentanan yang sudah teridentifikasi. Sebagian besar kerentanan yang dilakukan ekploitasi diantaranya adalah kesalahan konfigurasi pada pengaturan keamanan sistem


Sekian materi yang saya posting di blog ini. Mohon maaf apabila ada kekurangan dan kesalahan dalam penulisan. Semoga dapat bermanfaat bagi kita semua

Terima Kasih
Wassalamualaikum Wr. Wb.

Penulis
Nama: Dharma Ajie Nur Rois
NPM: 1810 6311 70120
Kelas: 6G Fasilkom

-----------------------------------------------------------------------------------------------------------------------------------------------

Daftar Pustaka

  • https://en.wikipedia.org/wiki/Non-functional_testing
  • http://www.kuliahkomputer.com/2018/07/pengujian-jaringan-komputer.html
  • https://qwords.com/blog/apa-itu-latency/
  • https://www.coursehero.com/file/p4iu4cg/PENGERTIAN-BENCHMARKING-Benchmark-adalah-teknik-pengetesan-dengan-menggunakan/#:~:text=PENGERTIAN%20BENCHMARKINGBenchmarkadalah%20teknik%20pengetesan%20dengan%20menggunakan%20suatu%20nilai,kualitas%20pada%20produk%20yang%20baru.
  • https://apsachieveonline.org/in/8-uji-kecepatan-intranet-gratis-benchmark-alat-kinerja-jaringan-lan/
  • https://idwebhost.com/blog/mempelajari-tentang-bandwidth-test/
  • https://id.wikipedia.org/wiki/Penganalisa_paket
  • https://gudangssl.id/blog/apa-itu-sniffing/
  • https://en.wikipedia.org/wiki/Penetration_test
  • https://www.equine.co.id/cek-keamanan-informasi-dengan-cara-penetration-testing/
  • https://www.panducipta.com/penetration-test/

Komentar