Apa itu Pengujian Regresi?
REGRESSION TESTING didefinisikan sebagai jenis pengujian perangkat lunak untuk memastikan bahwa program atau perubahan kode terbaru tidak berpengaruh buruk pada fitur yang ada.
Pengujian Regresi tidak lain adalah pilihan penuh atau sebagian dari kasus uji yang sudah dieksekusi yang dieksekusi ulang untuk memastikan fungsionalitas yang ada berfungsi dengan baik.
Pengujian ini dilakukan untuk memastikan bahwa perubahan kode baru tidak memiliki efek samping pada fungsionalitas yang ada. Ini memastikan bahwa kode lama masih berfungsi setelah perubahan kode terbaru dilakukan.
Dalam tutorial ini, kita akan belajar
- Perlunya Pengujian Regresi
- Bagaimana melakukan Pengujian Regresi
- Memilih kasus uji untuk pengujian regresi
- Alat Pengujian Regresi
- Pengujian Regresi dan Manajemen Konfigurasi
- Perbedaan antara Pengujian Ulang dan Pengujian Regresi
- Tantangan dalam Pengujian Regresi
- Penerapan Praktis Contoh Pengujian Regresi dengan Video
Perlunya Pengujian Regresi
The Kebutuhan Pengujian Regresi terutama timbul setiap kali ada kebutuhan untuk mengubah kode dan kita perlu menguji apakah kode dimodifikasi mempengaruhi bagian lain dari aplikasi perangkat lunak atau tidak. Selain itu, pengujian regresi diperlukan, ketika fitur baru ditambahkan ke aplikasi perangkat lunak dan untuk perbaikan kerusakan serta perbaikan masalah kinerja.
Bagaimana melakukan Pengujian Regresi
Untuk melakukan proses Pengujian Regresi , pertama-tama kita perlu men-debug kode untuk mengidentifikasi bug. Setelah bug diidentifikasi, perubahan yang diperlukan dilakukan untuk memperbaikinya, kemudian pengujian regresi dilakukan dengan memilih kasus uji yang relevan dari rangkaian pengujian yang mencakup bagian kode yang dimodifikasi dan terpengaruh.
Pemeliharaan perangkat lunak adalah aktivitas yang meliputi penyempurnaan, koreksi kesalahan, pengoptimalan, dan penghapusan fitur yang ada. Modifikasi ini dapat menyebabkan sistem bekerja secara tidak benar. Oleh karena itu, Pengujian Regresi menjadi perlu. Pengujian Regresi dapat dilakukan dengan menggunakan teknik berikut:
Tes Ulang Semua
- Ini adalah salah satu metode untuk Pengujian Regresi di mana semua pengujian di keranjang atau rangkaian pengujian yang ada harus dijalankan ulang. Ini sangat mahal karena membutuhkan waktu dan sumber daya yang besar.
Pemilihan Uji Regresi
Pemilihan Uji Regresi adalah teknik di mana beberapa kasus uji yang dipilih dari rangkaian uji dijalankan untuk menguji apakah kode yang dimodifikasi memengaruhi aplikasi perangkat lunak atau tidak. Kasus uji dikategorikan menjadi dua bagian, kasus uji yang dapat digunakan kembali yang dapat digunakan dalam siklus regresi lebih lanjut dan kasus uji usang yang tidak dapat digunakan dalam siklus berikutnya.
Prioritas Kasus Uji
- Prioritaskan kasus uji tergantung pada pengaruh bisnis, fungsi kritis & sering digunakan. Pemilihan kasus uji berdasarkan prioritas akan sangat mengurangi rangkaian uji regresi.
Memilih kasus uji untuk pengujian regresi
Dari data industri ditemukan bahwa sejumlah besar cacat yang dilaporkan oleh pelanggan disebabkan oleh perbaikan bug di menit-menit terakhir yang menciptakan efek samping dan karenanya memilih Kasus Uji untuk pengujian regresi adalah seni dan tidak semudah itu. Tes Regresi Efektif dapat dilakukan dengan memilih kasus uji berikut -
- Uji kasus yang sering cacat
- Fungsi yang lebih terlihat oleh pengguna
- Uji kasus yang memverifikasi fitur inti produk
- Uji kasus Fungsi yang telah mengalami perubahan yang lebih banyak dan baru-baru ini
- Semua Kasus Uji Integrasi
- Semua Kasus Uji Kompleks
- Kasus uji nilai batas
- Contoh kasus pengujian yang Berhasil
- Contoh kasus uji Kegagalan
Alat Pengujian Regresi
Jika perangkat lunak Anda sering mengalami perubahan, biaya pengujian regresi akan meningkat. Dalam kasus seperti itu, Eksekusi manual kasus uji meningkatkan waktu eksekusi uji serta biaya. Otomatisasi kasus uji regresi adalah pilihan cerdas dalam kasus tersebut. Tingkat otomatisasi bergantung pada jumlah kasus uji yang tetap dapat digunakan kembali untuk siklus regresi yang berurutan.
Berikut ini adalah alat terpenting yang digunakan untuk pengujian fungsional dan regresi dalam rekayasa perangkat lunak:
Selenium : Ini adalah alat open source yang digunakan untuk mengotomatiskan aplikasi web. Selenium dapat digunakan untuk pengujian regresi berbasis browser.
Quick Test Professional (QTP) : HP Quick Test Professional adalah perangkat lunak otomatis yang dirancang untuk mengotomatiskan kasus uji fungsional dan regresi. Ini menggunakan bahasa VBScript untuk otomatisasi. Ini adalah alat berbasis Data-driven, Kata kunci.
Rational Functional Tester (RFT) : Penguji fungsional rasional IBM adalah alat Java yang digunakan untuk mengotomatiskan kasus uji aplikasi perangkat lunak. Ini terutama digunakan untuk mengotomatiskan kasus uji regresi dan juga terintegrasi dengan Manajer Uji Rasional.
Pengujian Regresi dan Manajemen Konfigurasi
Manajemen Konfigurasi selama Pengujian Regresi menjadi keharusan di Lingkungan Agile di mana kode terus dimodifikasi. Untuk memastikan uji regresi yang efektif, perhatikan hal-hal berikut:
- Kode yang diuji regresi harus menggunakan alat manajemen konfigurasi
- Tidak ada perubahan yang diperbolehkan untuk membuat kode, selama tahap uji regresi. Kode uji regresi harus tetap kebal terhadap perubahan pengembang.
- Basis data yang digunakan untuk pengujian regresi harus diisolasi. Tidak ada perubahan database yang harus diizinkan
Perbedaan antara Pengujian Ulang dan Pengujian Regresi:
Tes ulang berarti menguji fungsionalitas atau bug lagi untuk memastikan kode sudah diperbaiki. Jika tidak diperbaiki, Cacat perlu dibuka kembali. Jika diperbaiki, Cacat ditutup.
Pengujian regresi berarti menguji aplikasi perangkat lunak Anda ketika mengalami perubahan kode untuk memastikan bahwa kode baru tidak memengaruhi bagian lain dari perangkat lunak.
Juga, Lihat daftar lengkap perbedaan di sini.
Tantangan dalam Pengujian Regresi:
Berikut adalah masalah pengujian utama untuk melakukan pengujian regresi:
- Dengan berjalannya regresi berturut-turut, rangkaian pengujian menjadi cukup besar. Karena keterbatasan waktu dan anggaran, seluruh rangkaian pengujian regresi tidak dapat dijalankan
- Meminimalkan rangkaian pengujian sekaligus mencapai cakupan Pengujian maksimum tetap menjadi tantangan
- Penentuan frekuensi Uji Regresi, yaitu, setelah setiap modifikasi atau setiap pembaruan versi atau setelah sekumpulan perbaikan bug, merupakan sebuah tantangan.
Penerapan Praktis Contoh Pengujian Regresi dengan Video
Klik di sini jika video tidak dapat diakses
Kesimpulan:
Strategi regresi yang efektif, menghemat waktu dan uang organisasi. Sesuai salah satu studi kasus di domain perbankan, regresi menghemat hingga 60% waktu dalam perbaikan bug (yang mungkin tertangkap oleh uji regresi) dan 40% uang