Pengujian End To End
End To End Testing adalah metode pengujian perangkat lunak yang memvalidasi seluruh perangkat lunak dari awal hingga akhir bersama dengan integrasinya dengan antarmuka eksternal. Tujuan dari pengujian ujung-ke-ujung adalah menguji seluruh perangkat lunak untuk ketergantungan, integritas data dan komunikasi dengan sistem lain, antarmuka dan database untuk melakukan produksi lengkap seperti skenario.
Bersamaan dengan sistem perangkat lunak, ini juga memvalidasi batch / pemrosesan data dari sistem hulu / hilir lainnya. Makanya, namanya "End-to-End" . Pengujian End to End biasanya dijalankan setelah Pengujian fungsional dan Sistem. Ini menggunakan produksi aktual seperti data dan lingkungan pengujian untuk mensimulasikan pengaturan waktu nyata. Pengujian ujung-ke-ujung juga disebut Pengujian Rantai .
Mengapa Pengujian End to End?
End To End Testing memverifikasi aliran sistem lengkap dan meningkatkan kepercayaan dengan mendeteksi masalah dan meningkatkan Cakupan Uji subsistem. Sistem perangkat lunak modern kompleks dan saling berhubungan dengan banyak subsistem yang mungkin berbeda dari sistem saat ini. Seluruh sistem dapat runtuh karena kegagalan subsistem yang merupakan risiko utama yang dapat dihindari dengan pengujian End-to-End.
Proses Pengujian dari ujung ke ujung:
Diagram berikut memberikan gambaran umum tentang proses pengujian End to End.
Kegiatan utama yang terlibat dalam Pengujian End to End adalah -
- Mempelajari persyaratan pengujian ujung ke ujung
- Pengaturan Lingkungan Pengujian dan persyaratan perangkat keras / perangkat lunak
- Jelaskan semua sistem dan proses subsistemnya.
- Deskripsi peran dan tanggung jawab untuk semua sistem
- Metodologi dan standar pengujian
- Pelacakan persyaratan ujung ke ujung dan perancangan kasus uji
- Data masukan dan keluaran untuk setiap sistem
Bagaimana cara membuat Kasus Uji End-to-End?
Kerangka desain pengujian ujung ke ujung terdiri dari tiga bagian
- Bangun fungsi pengguna
- Kondisi Bangun
- Buat Kasus Uji
Bangun Fungsi Pengguna
Aktivitas berikut harus dilakukan sebagai bagian dari fungsi pengguna build:
- Buat daftar fitur sistem dan komponen yang saling berhubungan
- Buat daftar data masukan, tindakan, dan data keluaran untuk setiap fitur atau fungsi
- Identifikasi hubungan antar fungsi
- Tentukan apakah fungsi tersebut dapat digunakan kembali atau independen
Misalnya -Timbangkan sebuah skenario di mana Anda login ke rekening bank Anda dan mentransfer sejumlah uang ke rekening lain dari beberapa bank yang lain (3 rd party sub-sistem)
- Masuk ke sistem perbankan
- Periksa jumlah saldo di akun
- Mentransfer beberapa jumlah dari akun Anda ke beberapa rekening bank lain (3 rd party sub-sistem)
- Periksa saldo akun terbaru Anda
- Keluar dari aplikasi
Bangun Kondisi berdasarkan Fungsi Pengguna
Aktivitas berikut dilakukan sebagai bagian dari kondisi bangunan:
- Membangun sekumpulan kondisi untuk setiap fungsi pengguna yang ditentukan
- Kondisi termasuk urutan, waktu dan kondisi data
Misalnya -Memeriksa lebih banyak kondisi seperti
Halaman masuk
- Nama Pengguna dan Kata Sandi Tidak Valid
- Memeriksa dengan nama pengguna dan kata sandi yang valid
- Pemeriksaan kekuatan kata sandi
- Memeriksa pesan kesalahan
Jumlah Saldo
- Periksa saldo saat ini setelah 24 jam. (Jika transfer dikirim ke bank lain)
- Periksa pesan kesalahan jika jumlah transfer lebih besar dari jumlah saldo saat ini
Buat Skenario Uji
Membangun Skenario Uji untuk fungsi pengguna yang ditentukan
Pada kasus ini,
- Masuk ke dalam sistem
- Periksa jumlah saldo bank
- Transfer jumlah saldo bank
Buat beberapa kasus Uji
Buat satu atau lebih kasus uji untuk setiap skenario yang ditentukan. Kasus uji dapat mencakup setiap kondisi sebagai kasus uji tunggal.
Metrik untuk pengujian End to End:
Berikut adalah beberapa dari banyak metrik yang digunakan untuk Pengujian End to End.
- Status persiapan Kasus Uji: Ini memberikan kemajuan persiapan Kasus Uji terhadap yang direncanakan
- Kemajuan Tes Mingguan- Memberikan detail mingguan dari persentase penyelesaian tes- Gagal, tidak dieksekusi & dieksekusi terhadap tes yang direncanakan untuk eksekusi.
- Status & Detail Cacat- Ini memberikan Persentase cacat terbuka & tertutup menurut minggu. Juga, distribusi kerusakan berdasarkan minggu berdasarkan tingkat keparahan dan prioritas
- Ketersediaan Lingkungan - Jumlah total jam "up" / Jumlah total jam yang dijadwalkan per hari untuk pengujian
Pengujian End to End Vs Pengujian Sistem
Pengujian End to End | Pengujian Sistem |
---|---|
Memvalidasi sistem perangkat lunak serta sub-sistem yang saling berhubungan | Hanya memvalidasi sistem perangkat lunak sesuai spesifikasi persyaratan. |
Ini memeriksa aliran proses ujung ke ujung lengkap. | Ia memeriksa fungsi dan fitur sistem. |
Semua antarmuka, sistem backend akan dipertimbangkan untuk pengujian | Pengujian Fungsional dan Non Fungsional akan dipertimbangkan untuk pengujian |
Ini dijalankan setelah Pengujian Sistem selesai. | Ini dijalankan setelah Pengujian Integrasi. |
Pengujian ujung ke ujung melibatkan pemeriksaan antarmuka eksternal yang mungkin rumit untuk diotomatiskan. Oleh karena itu Pengujian Manual lebih disukai. | Baik Manual dan Otomasi dapat dilakukan untuk Pengujian Sistem |
Kesimpulan
Dalam Rekayasa Perangkat Lunak, End to End Testing adalah proses memverifikasi sistem perangkat lunak bersama dengan sub-sistemnya. Tantangan terbesar dalam pengujian ini adalah memiliki pengetahuan yang cukup tentang keseluruhan sistem serta sub-sistem yang saling berhubungan.