Apa itu Pengujian Daya Tahan dalam Pengujian Perangkat Lunak? (dengan Contoh)
Pengujian Daya Tahan
Pengujian Daya Tahan adalah jenis pengujian perangkat lunak non-fungsional di mana perangkat lunak diuji dengan beban tinggi yang diperpanjang dalam jangka waktu yang signifikan untuk mengevaluasi perilaku aplikasi perangkat lunak dalam penggunaan berkelanjutan. Tujuan utama pengujian ketahanan adalah untuk memastikan bahwa aplikasi cukup mampu menangani beban yang diperpanjang tanpa penurunan waktu respons.
Jenis pengujian ini dilakukan pada tahap terakhir dari siklus pengoperasian kinerja. Pengujian ketahanan merupakan proses yang panjang dan terkadang memakan waktu hingga satu tahun. Hal ini mungkin termasuk menerapkan beban eksternal seperti lalu lintas Internet atau tindakan pengguna. Hal ini membuat pengujian ketahanan berbeda dari Pengujian beban, yang biasanya berakhir dalam beberapa jam atau lebih.
Endurance artinya kapasitas jadi dengan kata lain Endurance Testing bisa diistilahkan sebagai Uji Kapasitas.
Tujuan Pengujian Daya Tahan
- Tujuan utama pengujian Daya Tahan adalah untuk memeriksa kebocoran memori.
- Untuk mengetahui bagaimana kinerja sistem dalam penggunaan berkelanjutan.
- Untuk memastikan bahwa setelah jangka waktu yang lama, waktu respons sistem akan tetap sama atau lebih baik dari awal pengujian.
- Untuk menentukan jumlah pengguna dan/atau transaksi, sistem tertentu akan mendukung dan memenuhi sasaran kinerja.
- Untuk mengelola beban di masa depan, kita perlu memahami berapa banyak sumber daya tambahan (seperti kapasitas prosesor, kapasitas disk, penggunaan memori, atau bandwidth jaringan) yang diperlukan untuk mendukung penggunaan di masa depan.
- Pengujian ketahanan umumnya dilakukan dengan membebani sistem secara berlebihan atau dengan mengurangi sumber daya sistem tertentu dan mengevaluasi konsekuensinya.
- Hal ini dilakukan untuk memastikan bahwa cacat atau kebocoran memori tidak terjadi setelah periode penggunaan yang dianggap relatif “normal”.
Apa yang harus dipantau dalam Pengujian Ketahanan
Dalam Pengujian Ketahanan, hal-hal berikut diuji.- Uji kebocoran memori– Pemeriksaan dilakukan untuk memverifikasi apakah ada kebocoran memori pada aplikasi, yang dapat menyebabkan crash pada sistem atau OS
- Uji penutupan koneksi antar lapisan sistem – Jika koneksi antar lapisan sistem tidak berhasil ditutup, beberapa atau seluruh modul sistem mungkin terhenti.
- Tes koneksi database berhasil ditutup– Jika koneksi database tidak berhasil ditutup, dapat mengakibatkan sistem crash
- Uji waktu respons – Sistem diuji waktu respons sistem karena aplikasi menjadi kurang efisien akibat penggunaan sistem dalam waktu lama.
Cara melakukan Pengujian Daya Tahan
Di bawah ini adalah pendekatan pengujian dasar untuk Uji Daya Tahan- Lingkungan Pengujian – Identifikasi perangkat keras, perangkat lunak, sistem operasi yang diperlukan untuk pengujian ketahanan, penetapan peran dan tanggung jawab dalam tim, dll. Lingkungan harus siap sebelum pelaksanaan pengujian. Anda juga perlu memperkirakan ukuran produksi database umum dan pertumbuhan tahunan. Hal ini diperlukan karena Anda perlu menguji bagaimana tanggapan aplikasi Anda setelah satu, dua, atau lima tahun.
- Membuat Rencana Pengujian, Skenario – Berdasarkan sifat pengujian – manual atau otomatisasi atau kombinasi keduanya, Uji Kasus desain, tinjauan, dan pelaksanaan harus direncanakan. Pengujian untuk menekankan sistem, pengujian break point, dll. juga harus menjadi bagian dari rencana pengujian. Pengujian untuk menekankan sistem menentukan break point dalam aplikasi.
- Estimasi Tes – Berikan perkiraan berapa lama waktu yang dibutuhkan untuk menyelesaikan tahap pengujian. Hal ini harus dianalisis berdasarkan jumlah penguji yang terlibat dan jumlah siklus pengujian yang diperlukan.
- Analisis resiko - Menganalisis risiko dan mengambil tindakan yang tepat untuk pencegahannya. Memprioritaskan kasus uji sesuai dengan Faktor Risiko dan mengidentifikasi risiko dan masalah di bawah ini yang mungkin dilakukan penguji selama uji ketahanan.
- Akankah kinerja tetap konsisten dari waktu ke waktu?
- Apakah ada masalah kecil lainnya yang belum terdeteksi?
- Apakah ada campur tangan eksternal yang tidak diatasi?
- Jadwal Tes – Tentukan anggaran, hasil dalam jangka waktu. Sebagai Pengujian Daya Tahan menerapkan pengaturan beban transaksi yang besar namun alami pada sistem/aplikasi dalam jangka waktu yang terus menerus.
Contoh Pengujian Daya Tahan
Sementara Tes stres membawa sistem yang diuji ke batasnya, Pengujian ketahanan membawa aplikasi ke batasnya dari waktu ke waktuMisalnya, masalah yang paling rumit – kebocoran memori, penggunaan server basis data, dan sistem yang tidak responsif – terjadi saat perangkat lunak berjalan dalam jangka waktu yang lama. Jika Anda melewatkan uji ketahanan, peluang Anda untuk mendeteksi cacat tersebut sebelum penerapan cukup rendah.Alat Uji Daya Tahan
- BEBAN Web
- LoadComplete
- Apache JMeter
- LoadRunner
- Kemajuan
- MuatUI
- BukaSTA
- Rational Performance Tester
Keuntungan Pengujian Daya Tahan
- Ini membantu dalam menentukan bagaimana beban kerja dapat ditangani oleh Sistem Di Bawah Beban.
- Memberikan data akurat yang dapat digunakan pelanggan untuk memvalidasi atau meningkatkan kebutuhan infrastruktur mereka.
- Mengidentifikasi masalah kinerja yang mungkin terjadi setelah sistem berjalan pada tingkat tinggi untuk jangka waktu yang lama
- Masalah umum diidentifikasi dalam pengujian kinerja bertarget yang lebih kecil, yang berarti memastikan aplikasi tetap tersedia bahkan ketika ada beban besar dalam rentang waktu yang sangat singkat.
- Uji ketahanan juga digunakan untuk memeriksa apakah ada penurunan kinerja setelah jangka waktu eksekusi yang lama
Kekurangan Pengujian Daya Tahan
- Seringkali sulit untuk menentukan seberapa besar stres yang layak diterapkan.
- Pengujian Daya Tahan dapat menyebabkan kegagalan aplikasi dan/atau jaringan yang dapat mengakibatkan gangguan signifikan jika Lingkungan Uji tidak terisolasi.
- Kehilangan atau kerusakan data permanen dapat terjadi karena tekanan berlebihan pada sistem.
- Pemanfaatan sumber daya tetap sangat tinggi setelah stres dihilangkan.
- Beberapa komponen aplikasi gagal merespons.
- Pengecualian yang tidak tertangani diamati oleh pengguna akhir.
Ringkasan
- In Rekayasa Perangkat Lunak, Pengujian ketahanan adalah bagian dari pengujian beban.
- Pengujian ketahanan merupakan proses yang panjang dan terkadang berlangsung hingga satu tahun
- Pengecekan dilakukan untuk memverifikasi
- Uji kebocoran memori
- Uji waktu respons
- Uji koneksi database, dll.