Saat bekerja dengan Mockito dan Hamcrest, beberapa perpustakaan lain dapat meningkatkan kemampuan pengujian Anda. Berikut gambaran terperinci dari beberapa perpustakaan ini:
junit
** Junit adalah kerangka pengujian mendasar untuk Java yang terintegrasi dengan baik dengan Mockito dan Hamcrest. Ini memberikan serangkaian anotasi dan pernyataan yang kuat yang dapat digunakan bersama dengan kemampuan mengejek Mockito dan pencocokan Hamcrest. Junit 5, khususnya, menawarkan fitur yang lebih baik seperti tes parameter dan dukungan yang lebih baik untuk tes bersarang, menjadikannya alat yang ampuh untuk menulis tes unit komprehensif.
Powermock
** Powermock adalah perpanjangan dari mockito (dan Easymock) yang memungkinkan Anda untuk mengejek metode statis, kelas akhir, dan metode pribadi, yang tidak dimungkinkan dengan mockito saja. Ini sangat berguna ketika berhadapan dengan kode warisan atau perpustakaan pihak ketiga yang tidak dirancang dengan mempertimbangkan testabilitas. Namun, PowerMock dianggap lebih kompleks dan harus digunakan dengan hemat.
Jmock
** JMock adalah perpustakaan mengejek lain untuk Java yang dapat digunakan bersama Hamcrest. Meskipun tidak banyak digunakan seperti mockito, JMock menyediakan set fitur sendiri untuk membuat objek tiruan dan dapat diintegrasikan dengan Hamcrest untuk pernyataan yang lebih ekspresif.
Easymock
** Easymock adalah kerangka kerja mengejek populer lainnya yang dapat digunakan dengan Hamcrest. Ini memberikan pendekatan yang berbeda untuk membuat objek tiruan dibandingkan dengan mockito, fokus pada prinsip-prinsip pengembangan perilaku (BDD). Easymock dapat digunakan bersama dengan PowerMock untuk kemampuan mengejek yang lebih canggih.
Assertj
** Assertj adalah perpustakaan pernyataan yang menyediakan API yang fasih untuk menulis pernyataan. Meskipun dapat digunakan secara independen dari Hamcrest, AssertJ menawarkan cara penulisan yang lebih mudah dibaca dan ekspresif dibandingkan dengan pernyataan junit tradisional. Ini dapat digunakan bersama mockito untuk mengejek dan hamcrest untuk skenario pencocokan yang lebih kompleks.
tes musim semi
Jika Anda mengerjakan aplikasi berbasis pegas, Spring Test menyediakan alat tambahan untuk menguji komponen pegas. Ini terintegrasi dengan baik dengan mockito dan dapat digunakan untuk mengejek komponen spesifik pegas seperti layanan atau repositori. Meskipun bukan pengganti langsung untuk mockito, Spring Test menawarkan fitur yang disesuaikan dengan ekosistem musim semi.
Singkatnya, sementara Mockito dan Hamcrest membentuk kombinasi yang kuat untuk pengujian unit, perpustakaan seperti Junit, PowerMock, JMock, Easymock, Assertj, dan Spring Test dapat lebih meningkatkan kemampuan pengujian Anda tergantung pada kebutuhan spesifik dan persyaratan proyek Anda.
Kutipan:[1] https://www.lambdatest.com/automation-testing-advisor/selenium/methods/org.mockito.hamcrest.mockitohamrest.mockitohamrest
[2] https://hamcrest.org/javahamcrest/tutorial
[3] https://www.javacodegeeks.com/2015/11/hamcrest-matchers-tutorial.html
[4] https://www.infoworld.com/article/2257253/junit-5-tutorial-part-1-unit-testing-with-junit-5-mockito-and-hamcrest.html
[5] https://stackoverflow.com/questions/20441594/mockito-and-hamcrest-how-to-verify-invocation-of-collection-argument
[6] https://stackoverflow.com/questions/22697/whats-the-best-mock-framework-for-java
[7] https://tedvinke.wordpress.com/2013/12/17/mixing-junit-hamcrest-and-mockito-explaining-nosuchmethoderror/
[8] https://github.com/mockito/mockito/issues/324
[9] https://stackoverflow.com/questions/18770943/mockito-junit-hamcrest-versioning
[10] https://hamcrest.org/javahamcrest/distributables