Pengujian Stabilitas dalam Pengujian Perangkat Lunak

⚡ Ringkasan Cerdas

Pengujian Stabilitas memeriksa apakah aplikasi tetap berkinerja andal saat kondisi berubah, bukan hanya di bawah satu beban tetap. Pengujian ini mengungkap kerusakan, kehabisan sumber daya, dan penurunan kinerja yang tidak pernah terjadi pada pengujian fungsional singkat.

  • ️ Tujuan Inti: Konfirmasikan bahwa sistem tetap andal di berbagai beban dan pengoperasian yang lama.
  • ⚠️ Risiko yang Dihindari: Sistem yang belum diuji akan gagal dalam produksi dalam kondisi yang belum pernah dipraktikkan sebelumnya.
  • 📊 primer Signals: Jumlah CPU, memori, disk, dan thread tracked selama durasi penuh.
  • 🔄 Tidak Fungsional: Ini mengukur perilaku di bawah tekanan, bukan keakuratan fitur.
  • 🧪 Desain Tes: Kasus-kasus ini menargetkan beban CPU yang berkelanjutan, tekanan memori, dan transaksi berulang.
  • 📈 Pelaporan: Grafik tren lebih penting daripada pembacaan tunggal, karena penyimpangan adalah cacatnya.

Pengujian Stabilitas dalam Pengujian Perangkat Lunak

Apa itu Pengujian Stabilitas?

Pengujian Stabilitas adalah jenis pengujian perangkat lunak non-fungsional yang dilakukan untuk mengukur efisiensi dan kemampuan aplikasi perangkat lunak untuk terus berfungsi dalam jangka waktu yang lama. Tujuan dari pengujian Stabilitas adalah memeriksa apakah aplikasi perangkat lunak mengalami crash atau gagal dalam penggunaan normal pada suatu saat dengan menjalankan penggunaan penuhnya.

Pengujian Stabilitas dilakukan untuk memeriksa efisiensi produk yang dikembangkan melampaui kapasitas operasional normal, sering kali hingga mencapai titik henti. Yang lebih penting adalah penanganan kesalahan, keandalan perangkat lunak, ketahanan, dan skalabilitas produk di bawah beban berat daripada memeriksa perilaku sistem dalam keadaan normal.

Pengujian stabilitas menilai masalah stabilitas. Pengujian ini terutama ditujukan untuk memberikan tekanan maksimal pada komponen perangkat lunak. Ini adalah Teknik Non-Fungsional.

Pengujian Stabilitas
Pengujian Stabilitas

Pengujian stabilitas juga disebut sebagai Beban atau pengujian ketahanan.

Resiko jika Sistem yang diuji belum menjalani Uji Stabilitas

Untuk aplikasi yang sedang diuji yang memperkenalkan sejumlah besar pengguna dan aplikasi yang harus berjalan selama berbulan-bulan tanpa memulai ulang, sejumlah masalah mungkin terjadi:

Kesalahan yang mungkin terjadi dapat dihadapi,

  • sistem melambat
  • sistem mengalami masalah fungsionalitas
  • sistem menunjukkan perilaku kabel
  • sistem crash sama sekali

Dalam Rekayasa Perangkat Lunak, Pengujian Stabilitas biasanya melibatkan latihan sistem dengan pengguna berat (virtual) dan mengukur parameter kinerja untuk memverifikasi apakah sistem dapat mendukung beban yang diantisipasi.

Mengapa Pengujian Stabilitas

Pengujian semacam ini membantu pengguna untuk memahami cara kerja sistem dalam situasi kehidupan nyata.

Oleh karena itu, Pengujian Stabilitas memungkinkan Anda memeriksa,

  • Memberikan keyakinan pada stabilitas sistem Anda yang sedang diuji.
  • Pastikan sistem Anda dapat menangani program besar.
  • Pantau efektivitas sistem Anda.
  • Uji stabilitas sistem di bawah tekanan.

Ini memainkan peran penting dalam pengembangan produk karena digunakan untuk menentukan batasan produk perangkat lunak yang diuji sebelum dirilis atau area yang perlu ditingkatkan sebelum produk diluncurkan atau di Produksi.

Contoh yang sangat umum dari teknik pengujian Stabilitas adalah

Online Slompatping Portals: Pengujian stabilitas akan memeriksa bagaimana perilaku situs web ketika –

  • Jumlah data yang dimasukkan tinggi pada waktu puncak
  • Jumlah hit pada waktu tertentu
  • Masalah pemuatan halaman secara bersamaan
  • Perilaku sistem
  • Responsivitas sistem dan banyak lagi lainnya berada di bawah Pengujian Stabilitas

Contoh lain

A CPU tes adalah bentuk tes stabilitas yang populer di bawah Pengujian Kinerja teknik. Tes ini memeriksa stabilitas prosesor dan juga memantau kinerjanya seiring dengan peningkatan beban kerja prosesor.

Bagaimana melakukan Pengujian Stabilitas

  • Untuk menentukan cakupan dan tujuan pengujian, kita harus memastikan bahwa Server Aplikasi tidak mengalami crash selama pelaksanaan Uji Beban.
  • Untuk menentukan masalah Bisnis, verifikasi kinerja dan beban sistem sesuai perspektif pengguna akhir.
  • Untuk menetapkan Tanggung Jawab dan Peran yang berbeda seperti -Membuat rencana Tes, Uji Kasus desain, tinjauan kasus uji, pelaksanaan uji, dll.
  • Untuk memastikan hasil Tes dalam waktu yang ditentukan
  • Untuk memastikan tepat Pengujian beban alat dan tim pengalaman hadir untuk hal yang sama.
  • Untuk mengukur risiko dan biaya yang terlibat dalam pengujian. Ini akan menentukan biaya setiap eksekusi dalam hal pemanfaatan CPU dan memori.
  • Tentukan Cacat tracraja dan pelaporan serta peta mereka yang tepatping dengan persyaratannya.

Kasus Uji untuk Pengujian Stabilitas Kinerja CPU

  • Untuk memverifikasi batas atas sistem.
  • Bagaimana sistem crash atau pulih.
  • Jumlah total transaksi yang diselesaikan per permintaan.
  • Apakah respon transaksi tetap stabil atau meningkat seiring berjalannya waktu.
  • Bagaimana sistem berperilaku di bawah beban berat.
  • Respons dan perilakunya di bawah beban berat.

Laporan Uji untuk Pengujian Stabilitas

Beberapa statistik dikumpulkan dan diukur selama pelaksanaan pengujian; angka-angka ini dianalisis untuk menghasilkan laporan dan mengidentifikasi kemungkinan masalah kinerja.

Contoh statistik yang dikumpulkan dalam pengujian adalah:

  • Waktu Respons Transaksi: Rata-rata waktu yang dibutuhkan untuk melakukan transaksi selama pengujian. Statistik ini akan mengevaluasi apakah kinerja server berada dalam periode waktu kinerja transaksi minimum dan maksimum yang dapat diterima yang ditentukan untuk sistem. Informasi ini akan mengevaluasi waktu yang dibutuhkan dalam memproses permintaan oleh server web dan dikirim ke server aplikasi, yang mana sebagian besar kasus akan membuat permintaan ke server database.
  • Hit Per Detik: Jumlah hit yang dilakukan pengguna di server. Statistik ini berguna untuk menentukan jumlah beban yang dihasilkan pengguna, sehubungan dengan jumlah klik.
  • Throughput: Jumlah throughput pada server Web selama pengujian yang diukur dalam byte. Throughput berarti jumlah data yang diterima pengguna dari server pada waktu tertentu. Statistik ini membantu mengevaluasi jumlah beban yang dihasilkan pengguna.
  • Transaksi per detik: Ini adalah jumlah total transaksi yang diselesaikan (berhasil dan gagal) yang dilakukan selama pengujian. Statistik ini membantu memeriksa beban transaksi aktual pada sistem.
  • CPU: Persentase pemanfaatan CPU yang dihabiskan selama pengujian.
  • Оперативная память: Penggunaan memori selama tes.
  • Disk: pemanfaatan ruang disk yang dihabiskan selama pengujian.

Dasar-dasar Pengujian Stabilitas

Pengujian Stabilitas berada di bawah Pengujian Kinerja –sebuah teknik yang dilakukan untuk memeriksa beberapa atribut kualitas Perangkat Lunak seperti stabilitas, keandalan, dan ketersediaan.

Pengujian ini digunakan untuk menentukan seberapa cepat kinerja sistem atau subsistem pada beban kerja tertentu.

Pengujian Kinerja memiliki banyak jenis dan pengujian stabilitas adalah salah satunya.

  • Tes stres: Ini adalah jenis pengujian yang memeriksa ketahanan sistem melebihi kapasitas sistem.
  • Pengujian lonjakan: Ini digunakan untuk memeriksa perilaku suatu sistem dengan meningkatkan beban sistem secara instan. Tujuannya adalah untuk memeriksa pada titik mana sistem akan mengalami masalah kinerja, atau akan lolos.
  • Pengujian skalabilitas: Digunakan untuk memeriksa kemampuan suatu sistem. Seberapa efektif sistem akan berperilaku dalam menghadapi kebutuhan yang terus meningkat, perubahan ukuran, dan perubahan volume.
  • Pengujian volume: Ini adalah teknik pengujian non-fungsional di mana perangkat lunak yang diuji dikenakan sejumlah besar data, dan perilaku sistem diperiksa dan diverifikasi.
  • Pengujian Beban atau Stabilitas: (sudah dibahas di atas)

Alat Uji Stabilitas

Beberapa alat untuk Pengujian Kinerja adalah sebagai –

  • BEBAN Web
  • LoadRunner
  • Apache JMeter
  • NeoBeban
  • Uji Cloud
  • badai beban
  • MuatUI
  • WAPT
  • Dampak Beban
  • Pemuat
  • kinerja terbaik
  • BukaSTA

Bagaimana Tes Ini Sesuai dengan Rangkaian Pengujian Kinerja

Pengujian kinerja adalah istilah umum. Varian-varian di bawah ini hanya berbeda pada bentuk beban yang diterapkan dan durasi penahanannya, itulah sebabnya mengapa seringkali terjadi kebingungan satu sama lain.

Jenis pengujian Pola beban Pertanyaan itu menjawab
Uji beban Beban puncak yang diperkirakan, durasi singkat Apakah sistem tersebut mencapai targetnya dalam kondisi lalu lintas puncak normal?
Tes stres Ditingkatkan melebihi kapasitas hingga terjadi kegagalan. Di mana letak kerusakannya, dan apakah kegagalannya ditangani dengan baik?
Pengujian lonjakan Lonjakan ekstrem tiba-tiba, lalu penurunan. Apakah ia mampu bertahan dan pulih dari guncangan lalu lintas?
Pengujian ketahanan Beban normal ditahan selama berjam-jam. Apakah kinerja menurun seiring waktu?
Pengujian perendaman Beban berkelanjutan dalam jangka waktu yang lama Apakah terjadi kebocoran memori atau kehabisan sumber daya?
Pengujian stabilitas Beban yang bervariasi di berbagai kondisi Apakah sistem tetap andal seiring perubahan kondisi?
Pengujian volume Pengguna biasa, volume data sangat besar Apakah sistem ini mampu menangani pertumbuhan basis data?

Pengujian daya tahan dan pengujian perendaman sering dianggap sebagai sinonim. Dalam penggunaan umum, keduanya memiliki arti yang sama: keduanya mampu menahan beban berkelanjutan dalam jangka waktu lama. Jika tim membedakannya, pengujian ketahanan (endurance testing) berfokus pada apakah waktu respons meningkat, sementara pengujian beban berlebih (soak testing) berfokus pada konsumsi sumber daya seperti memori, penanganan file, dan kumpulan koneksi. Menjalankan salah satunya biasanya memberikan bukti untuk keduanya.

Metrik Utama yang Perlu Dicatat Selama Pengujian

Suatu pengujian performa hanya akan sebaik apa yang Anda rekam selama proses eksekusi. Rekam keenam hal ini di sisi server dan klien, lalu bandingkan dengan data dasar, bukan hanya berdasarkan firasat.

metrik Apa yang dikatakannya padamu Tanda peringatan
Waktu respons rata-rata Pengalaman pengguna tipikal Pergeseran ke atas apa pun di sepanjang jalur tersebut
Waktu respons persentil ke-95 Pengalaman pengguna paling lambat Jauh di atas rata-rata, artinya tidak konsisten.
Throughput Permintaan yang diproses per detik Terjatuh sementara beban tetap konstan
Tingkat kesalahan Persentase permintaan yang gagal atau habis waktu Kenaikan apa pun di atas ambang batas yang disepakati
Penggunaan CPU dan memori Kapasitas sumber daya server yang tersedia Kenangan yang terus mendaki dan tak pernah kembali
Koneksi dan thread basis data Kelelahan kolam renang Jumlah yang terus bertambah tanpa dirilis

Bacalah nilai rata-rata dan persentil secara bersamaan. Rata-rata 800 ms dengan persentil ke-95 sebesar 900 ms menggambarkan sistem yang konsisten. Rata-rata yang sama dengan persentil ke-95 sebesar 9 detik berarti satu dari dua puluh pengguna mengalami masalah, dan rata-rata tersebut menyembunyikan masalah itu.

Perhatikan bentuknya, bukan hanya nilainya. Dalam pengujian jangka panjang apa pun, garis sumber daya yang datar berarti lulus dan garis yang meningkat berarti ada kebocoran, bahkan ketika angka absolutnya masih berada di dalam batas yang diizinkan pada saat pengujian berakhir.

Pertanyaan Umum Demo Slot

Pengujian beban memeriksa perilaku pada puncak yang ditentukan untuk periode singkat. Pengujian stabilitas berjalan di berbagai kondisi untuk jangka waktu yang jauh lebih lama, mencari degradasi daripada sekadar lulus atau gagal terhadap target.

Cukup lama bagi masalah yang berkembang perlahan untuk muncul, biasanya 8 hingga 72 jam. Kurang dari satu jam jarang sekali memunculkan kebocoran memori atau kumpulan koneksi yang terkuras secara bertahap.

Kebocoran sumber daya, koneksi basis data yang tidak ditutup, cache yang tidak terbatas, dan thread yang dibuat tetapi tidak pernah dilepaskan. Keempatnya tampak sehat dalam jangka pendek dan gagal setelah berjalan cukup lama.

Deteksi anomali berbasis AI mendeteksi momen ketika kurva sumber daya berubah kemiringan, yang jauh lebih awal daripada alarm ambang batas tetap dan jauh lebih andal daripada membaca grafik secara visual.

Ya. Model yang dilatih berdasarkan insiden masa lalu dan perubahan kode menyoroti modul yang paling mungkin menyebabkan kebocoran sumber daya, sehingga tim dapat menargetkan pengujian jangka panjang di tempat yang akan memberikan hasil yang optimal.

Ringkaslah postingan ini dengan: