Jawabanku? Mungkin, mungkin juga tidak .
Tes EOE bagus ketika mereka sangat sederhana. Jika Anda berencana untuk membahas skenario dasar, Anda dapat mengatur untuk mendapatkan beberapa keuntungan dengan tes EOE. Tetapi jika Anda memiliki aplikasi yang benar-benar kompleks dan besar (mission critical atau tidak), tes EOE ini akan mahal untuk dipelihara dan Anda perlu mengetahui skenario Anda untuk menilai apakah layak.
Beberapa tahun yang lalu Google Testing Blog membahas masalah ini. Saya hanya bisa setuju dengan penulis. Tes yang baik harus cepat , andal , dan mengisolasi kegagalan , fitur-fitur yang tidak bisa diberikan oleh pengujian EOE kepada Anda.
Saya mengerjakan aplikasi yang memiliki lebih dari 12 jam tes ujung ke ujung yang mencakup banyak skenario. Akhirnya kami berhasil mendistribusikan tes ini pada mesin yang berbeda, mengendalikan awal, pelaksanaan, dan akhir pengujian, mengumpulkan dan menggabungkan hasilnya. Aplikasi yang diuji adalah aplikasi monolith (apa yang lebih mudah disiapkan dan dijalankan untuk diuji) dan merupakan mimpi buruk untuk mempertahankan tes.
Sebagian besar waktu kami mempertahankan tes bukannya menangkap bug dari hasil mereka. Menemukan asal bug pada tes ujung ke ujung membutuhkan banyak waktu. Kami juga menangani banyak tes "false-negative" dan sedikit waktu untuk memahami masalah dan memperbaikinya: Java memuat masalah Applet, elemen yang diharapkan tidak ditemukan pada halaman (ditambah masalah lain tentang kecepatan otomatisasi), mempertahankan kode kueri yang hanya digunakan pada tes memori database (karena permintaan asli menggunakan kode spesifik database), dll.
Semua ini membutuhkan orang untuk mempertahankan dan menjalankan. Pada akhirnya kami mulai menghapus beberapa tes EOE dan menggantinya dengan banyak tes unit / integrasi.
Jadi, saran konservatif saya adalah menggunakan piramida pengujian dari Google:
Sebagai tebakan pertama yang baik, Google sering menyarankan pemisahan 70/20/10: tes unit 70%, tes integrasi 20%, dan tes end-to-end 10%. Campuran yang tepat akan berbeda untuk setiap tim, tetapi secara umum, itu harus mempertahankan bentuk piramida itu.