Saat ini saya berada di kelas untuk pengujian perangkat lunak di mana untuk proyek semester kami, kami harus melakukan beberapa jenis pengujian di atasnya, seperti pengujian unit dan pengujian integrasi. Untuk pengujian integrasi, profesor mengatakan untuk menggunakan perpustakaan tiruan dan mengejek (seperti EasyMock dan Mockito) untuk pengujian integrasi kami. Tapi aku agak bingung. Pengujian integrasi adalah pengujian kelas luar, modul, layanan, dll. Mengapa ejekan dan stub layak digunakan dalam pengujian integrasi jika Anda menguji beberapa kelas dan layanan?
unit-testing
testing
integration-tests
mocking
KodeLegend
sumber
sumber
Jawaban:
Jika Anda memiliki fungsi yang menyentuh beberapa komponen eksternal, Anda dapat mengejek semua kecuali satu untuk mengisolasi dan menguji komponen tertentu. Sebagai contoh, misalkan Anda memiliki fungsi yang memanggil layanan web dan kemudian melakukan sesuatu dengan database berdasarkan hasil. Anda dapat menulis tiga tes integrasi:
Jika Anda menjalankan ketiga tes dan 1 dan 3 gagal, ada kemungkinan besar bahwa mungkin ada bug dalam kode Anda yang bekerja dengan database, karena satu-satunya tes yang lulus adalah yang menggunakan konektivitas database tiruan.
Secara umum, tes integrasi tidak menggunakan tiruan, tetapi saya telah melakukan sesuatu seperti ini pada kesempatan.
sumber
Tidak segera jelas apa yang dimaksud dengan Tes Integrasi tetapi penggunaan Fakes / Mocks / Test Doubles adalah teknik yang valid untuk membuat skenario pengujian pada semua tingkatan dalam piramida tes . [1] [2] [3]
sumber