Pengujian Tangkas - Metodologi
Agile adalah metodologi pengembangan berulang, di mana seluruh tim proyek berpartisipasi dalam semua aktivitas. Persyaratan berkembang seiring dengan kemajuan iterasi, melalui kolaborasi antara pelanggan dan tim yang mengatur dirinya sendiri. Karena Coding dan Pengujian dilakukan secara interaktif dan bertahap, selama pengembangan, produk akhir akan berkualitas dan memastikan persyaratan pelanggan.
Setiap iterasi menghasilkan peningkatan produk kerja yang terintegrasi dan dikirimkan untuk Pengujian Penerimaan Pengguna. Umpan balik pelanggan yang diperoleh akan menjadi masukan untuk Iterasi berikutnya / berikutnya.
Integrasi Berkelanjutan, Kualitas Berkelanjutan
Integrasi Berkelanjutan adalah kunci keberhasilan Pengembangan Agile. Integrasikan sesering mungkin, setidaknya setiap hari sehingga Anda siap untuk rilis jika diperlukan. Pengujian di Agile menjadi komponen penting dari semua fase pengembangan, memastikan kualitas produk yang berkelanjutan. Umpan balik yang konstan dari semua orang yang terlibat dalam proyek menambah kualitas produk.
Dalam Agile, komunikasi sangat penting dan permintaan pelanggan diterima jika diperlukan. Ini memberikan kepuasan kepada pelanggan bahwa semua masukan dipertimbangkan dan produk berkualitas kerja tersedia sepanjang pengembangan.
Metodologi Agile
Ada beberapa Metodologi Agile yang mendukung Agile Development. Metodologi Agile meliputi -
Scrum
Scrum adalah metode pengembangan Agile yang menekankan pada pendekatan yang berpusat pada tim. Ini menganjurkan partisipasi seluruh tim dalam semua kegiatan pengembangan proyek.
XP
eXtreme Programming berpusat pada pelanggan dan berfokus pada kebutuhan yang terus berubah. Dengan rilis yang sering dan umpan balik pelanggan, produk akhir akan memenuhi persyaratan pelanggan yang berkualitas yang dibuat lebih jelas selama proses.
Kristal
Crystal didasarkan pada pencarteran, pengiriman siklik dan pembungkus.
Pemborongan melibatkan pembentukan tim pengembangan, melakukan analisis kelayakan awal, sampai pada rencana awal dan metodologi pengembangan.
Pengiriman Cyclic dengan dua atau lebih siklus pengiriman berfokus pada fase pengembangan dan pengiriman produk akhir terintegrasi.
Selama Rangkuman, penerapan ke lingkungan pengguna, tinjauan dan refleksi pasca-penerapan dilakukan.
FDD
Feature Driven Development (FDD) melibatkan perancangan dan pembangunan fitur. Perbedaan antara FDD dan Metodologi Pengembangan Agile lainnya adalah bahwa fitur-fiturnya dikembangkan dalam fase spesifik dan pendek secara terpisah.
DSDM
Metode Pengembangan Perangkat Lunak Dinamis (DSDM) didasarkan pada Pengembangan Aplikasi Cepat (RAD) dan selaras dengan Kerangka Agile. DSDM berfokus pada pengiriman produk yang sering, melibatkan pengguna secara aktif dan memberdayakan tim untuk membuat keputusan cepat.
Pengembangan Perangkat Lunak Lean
Dalam Lean Software Development, fokusnya adalah menghilangkan pemborosan dan memberi nilai kepada pelanggan. Ini menghasilkan perkembangan yang cepat dan produk yang bernilai.
Pemborosan termasuk pekerjaan yang sudah selesai sebagian, pekerjaan yang tidak relevan, fitur yang tidak digunakan oleh pelanggan, cacat, dll. Yang menambah penundaan pengiriman.
Itu Lean Principles adalah -
- Menghilangkan limbah
- Perkuat Pembelajaran
- Komitmen Tunda
- Berdayakan Tim
- Kirim dengan Cepat
- Bangun Integritas dalam
- Lihat Keseluruhan
Kanban
Kanban berfokus pada pengelolaan pekerjaan dengan penekanan pada pengiriman just-in-time (JIT), sementara tidak membebani anggota tim. Tugas ditampilkan untuk dilihat semua peserta dan Anggota Tim menarik pekerjaan dari antrian.
Kanban didasarkan pada -
- Papan Kanban (Visual dan Persisten di Seluruh Pengembangan)
- Batas Work-in-progress (WIP)
- Waktu Pimpin
Metodologi Pengujian Tangkas
Praktik pengujian didefinisikan dengan baik untuk setiap proyek, apakah Agile atau tidak, untuk menghasilkan produk berkualitas. Prinsip Pengujian Tradisional cukup sering digunakan dalam Pengujian Agile. Salah satunya adalah Pengujian Awal yang berfokus pada -
Menulis Uji Kasus untuk mengekspresikan perilaku sistem.
Pencegahan, Deteksi dan Penghapusan Cacat Dini.
Memastikan bahwa jenis pengujian yang tepat dijalankan pada waktu yang tepat dan sebagai bagian dari level pengujian yang tepat.
Dalam semua Metodologi Agile yang kita diskusikan, Pengujian Agile itu sendiri adalah Metodologi. Dalam semua pendekatan, Kasus Uji ditulis sebelum Coding.
Dalam tutorial ini, kami akan fokus pada Scrum sebagai Metodologi Pengujian Agile.
Metodologi Pengujian Agile lainnya yang umum digunakan adalah -
Test-Driven Development (TDD) - Test-Driven Development (TDD) didasarkan pada pengkodean yang dipandu oleh tes.
Acceptance Test-Driven Development (ATDD) - Pengembangan Berbasis Tes Penerimaan (ATDD) didasarkan pada komunikasi antara pelanggan, pengembang, dan penguji dan didorong oleh Kriteria Penerimaan dan Kasus Uji Penerimaan yang telah ditentukan sebelumnya.
Behavior-Driven Development (BDD) - Dalam pengujian Behavior-Driven Development (BDD) didasarkan pada perilaku yang diharapkan dari perangkat lunak yang sedang dikembangkan.
Siklus Hidup Pengujian Agile
Di Scrum, aktivitas Pengujian meliputi -
Berkontribusi ke Kisah Pengguna berdasarkan perilaku yang diharapkan dari Sistem yang digambarkan sebagai Kasus Uji
Perencanaan Rilis berdasarkan Upaya Uji dan Cacat
Perencanaan Sprint berdasarkan Kisah Pengguna dan Cacat
Eksekusi Sprint dengan Pengujian Berkelanjutan
Pengujian Regresi setelah Sprint selesai
Melaporkan Hasil Tes
Pengujian Otomasi
Pengujian itu berulang dan berbasis sprint seperti yang digambarkan dalam diagram yang diberikan di bawah ini -