Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon มีห้องสมุดอื่น ๆ ที่รวมเข้ากับ Mockito และ Hamcrest ได้ดี


มีห้องสมุดอื่น ๆ ที่รวมเข้ากับ Mockito และ Hamcrest ได้ดี


เมื่อทำงานกับ Mockito และ Hamcrest ห้องสมุดอื่น ๆ อีกหลายแห่งสามารถเพิ่มขีดความสามารถในการทดสอบของคุณ นี่คือภาพรวมโดยละเอียดของห้องสมุดเหล่านี้:

Junit

** Junit เป็นกรอบการทดสอบพื้นฐานสำหรับ Java ที่รวมเข้ากับทั้ง Mockito และ Hamcrest มันมีชุดคำอธิบายประกอบและการยืนยันที่แข็งแกร่งซึ่งสามารถใช้ร่วมกับความสามารถในการเยาะเย้ยของ Mockito และการจับคู่ของ Hamcrest โดยเฉพาะอย่างยิ่ง Junit 5 นำเสนอคุณสมบัติที่ได้รับการปรับปรุงเช่นการทดสอบพารามิเตอร์และการสนับสนุนที่ดีขึ้นสำหรับการทดสอบแบบซ้อนกันทำให้เป็นเครื่องมือที่ทรงพลังสำหรับการเขียนการทดสอบหน่วยที่ครอบคลุม

Powermock

** Powermock เป็นส่วนขยายของ mockito (และ easymock) ที่ช่วยให้คุณสามารถเยาะเย้ยวิธีการคงที่คลาสสุดท้ายและวิธีการส่วนตัวซึ่งไม่สามารถทำได้ด้วย mockito เพียงอย่างเดียว สิ่งนี้มีประโยชน์อย่างยิ่งเมื่อต้องรับมือกับรหัสดั้งเดิมหรือห้องสมุดบุคคลที่สามที่ไม่ได้ออกแบบโดยคำนึงถึงความสามารถในการทดสอบ อย่างไรก็ตาม Powermock นั้นมีความซับซ้อนมากขึ้นและควรใช้เท่าที่จำเป็น

jmock

** jmock เป็นอีกหนึ่งห้องสมุดเยาะเย้ยสำหรับ Java ที่สามารถใช้ร่วมกับ Hamcrest ในขณะที่มันไม่ได้ใช้กันอย่างแพร่หลายเหมือน mockito แต่ JMock ให้คุณสมบัติของตัวเองสำหรับการสร้างวัตถุจำลองและสามารถรวมเข้ากับ Hamcrest เพื่อการยืนยันที่แสดงออกมากขึ้น

easymock

** Easymock เป็นอีกหนึ่งกรอบการเยาะเย้ยที่ได้รับความนิยมซึ่งสามารถใช้กับ Hamcrest ได้ มันมีวิธีการที่แตกต่างกันในการสร้างวัตถุจำลองเมื่อเทียบกับ mockito โดยมุ่งเน้นไปที่หลักการพัฒนาที่ขับเคลื่อนด้วยพฤติกรรม (BDD) EasyMock สามารถใช้ร่วมกับ Powermock เพื่อความสามารถในการเยาะเย้ยขั้นสูง

assertj

** Assertj เป็นห้องสมุดยืนยันที่ให้ API ที่คล่องแคล่วสำหรับการเขียนการยืนยัน ในขณะที่มันสามารถใช้เป็นอิสระจาก Hamcrest แต่ AssertJ เสนอวิธีการเขียนที่อ่านได้และแสดงออกได้มากขึ้นเมื่อเทียบกับการยืนยันแบบดั้งเดิม มันสามารถใช้ร่วมกับ mockito สำหรับการเยาะเย้ยและ hamcrest สำหรับสถานการณ์การจับคู่ที่ซับซ้อนมากขึ้น

การทดสอบสปริง

หากคุณกำลังทำงานกับแอปพลิเคชันที่ใช้สปริงสปริงทดสอบเครื่องมือเพิ่มเติมสำหรับการทดสอบส่วนประกอบสปริง มันรวมเข้ากับ Mockito ได้ดีและสามารถใช้ในการเยาะเย้ยส่วนประกอบเฉพาะฤดูใบไม้ผลิเช่นบริการหรือที่เก็บ ในขณะที่ไม่ใช่การทดแทนโดยตรงสำหรับ mockito การทดสอบสปริงนำเสนอคุณสมบัติที่เหมาะกับระบบนิเวศฤดูใบไม้ผลิ

โดยสรุปในขณะที่ Mockito และ Hamcrest เป็นการผสมผสานที่ทรงพลังสำหรับการทดสอบหน่วยห้องสมุดเช่น Junit, Powermock, JMock, EasyMock, AssertJ และการทดสอบสปริงสามารถเพิ่มขีดความสามารถในการทดสอบของคุณขึ้นอยู่กับความต้องการเฉพาะและความต้องการของโครงการ

การอ้างอิง:
[1] https://www.lambdatest.com/automation-testing-advisor/selenium/methods/org.mockito.hamcrest.mockitohamcrest.mockitohamcrest
[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-verversioning
[10] https://hamcrest.org/javahamcrest/distributables