Apa itu stress test dalam pendekatan perangkat lunak?
stress test dalam perangkat lunak adalah jenis pengujian yang melibatkan penerapan aplikasi atau sistem perangkat lunak yang dilakukan melalui skenario menguji sistem dengan cara melakukan simulasi proses melebihi kapasitas kerja normalnya. Tujuan stress test adalah untuk mengidentifikasi titik kritis atau batas kinerja perangkat lunak di bawah beban berat dan untuk menentukan bagaimana kinerjanya dalam kondisi ekstrem.
Pendekatan pengujian ini dapat membantu mengidentifikasi potensi hambatan kinerja, kesalahan perangkat keras dan perangkat lunak, serta masalah lain yang mungkin muncul selama waktu penggunaan puncak. Dengan mengidentifikasi masalah-masalah ini sebelumnya, para engineer dapat mengambil langkah-langkah perbaikan untuk memastikan perangkat lunak atau aplikasi tetap stabil dan efisien dalam kondisi ekstrem.
Metode stress test
Ada berbagai jenis stress test yang dapat dilakukan untuk mengevaluasi kinerja dan ketahanan suatu sistem:
Load Test:
Load Test melibatkan penerapan sistem pada beban kerja tertentu, biasanya pada atau sedikit di atas kapasitas operasi normalnya, untuk mengevaluasi kinerja, waktu respons, dan penggunaan sumber dayanya.
Spike Test:
Dalam Spike Test, dilakukan simulasi peningkatan lalu lintas pengguna atau beban sistem yang tiba-tiba dan signifikan dengan tujuan untuk mengamati bagaimana sistem menangani dan memulihkan diri dari lonjakan tiba-tiba tersebut.
Volume Test:
Jenis Stress test ini melibatkan pengujian sistem dengan volume data yang besar untuk menilai perilaku dan kinerjanya di bawah beban data yang berat.
Soak Test:
Soak Test, juga dikenal sebagai Endurance Test pengujian daya tahan, melibatkan pengoperasian sistem di bawah beban tinggi yang berkelanjutan dalam jangka waktu yang lama untuk mengidentifikasi penurunan kinerja, kebocoran memori, atau masalah pemanfaatan sumber daya seiring waktu.
Endurance Test:
Jenis pengujian ini mengevaluasi kemampuan sistem untuk menangani beban yang konsisten dalam jangka waktu yang lama.
Berbagai jenis pengujian stres ini membantu mengidentifikasi hambatan kinerja, masalah skalabilitas, dan kerentanan dalam sistem, yang memungkinkan organisasi untuk mengoptimalkan dan memperkuat sistem mereka demi meningkatkan keandalan dan pengalaman pengguna.
Apa Manfaat dari stress test?
Mengetahui kualitas ketahanan dari system
Bagaimana cara melakukan stress test?
- Membanjiri prosess pada sistem secara bertahap (Load test) 1000 request
- Memasukkan input muatan penyimpanan melebihi kapasitas secara bertahap (Volume Test) 80%
- Melakukan metode 1 dan 2 secara tiba-tiba (Spike Test)
- Melakukan metode 1 secara konsisten dalam jangka waktu yang lama (1 minggu hingga 1 bulan) (Endurance test)
Dimana Ruang lingkup dari stress test?
- Jumlah Proses memory & storage
- Jumlah Penyimpanan
- Lamanya waktu restorasi yang dibutuhkan setelah accident
- kapan Menambah kapasitas
- Jumlah Client yang dapat dilayani dalam satu detik (concurrent)
- Jumlah utilitas proses dan memori yang dibutuhkan untuk satu client dalam jangka waktu 30 menit s/d 1 jam?