Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Mockito 및 Hamcrest와 잘 통합되는 다른 도서관이 있습니까?


Mockito 및 Hamcrest와 잘 통합되는 다른 도서관이 있습니까?


Mockito 및 Hamcrest와 함께 작업 할 때 다른 여러 라이브러리가 테스트 기능을 향상시킬 수 있습니다. 다음은 이러한 라이브러리에 대한 자세한 개요입니다.

주니

** Junit은 Mockito 및 Hamcrest와 잘 통합되는 Java의 기본 테스트 프레임 워크입니다. 그것은 Mockito의 조롱 기능 및 Hamcrest의 매칭과 함께 사용할 수있는 강력한 주석 및 어설 션 세트를 제공합니다. 특히 Junit 5는 매개 변수화 된 테스트 및 중첩 테스트에 대한 더 나은 지원과 같은 개선 된 기능을 제공하므로 포괄적 인 단위 테스트를 작성하는 강력한 도구입니다.

PowerMock

** PowerMock은 Mockito (및 EasyMock)의 확장으로, Mockito만으로는 불가능한 정적 방법, 최종 클래스 및 개인 방법을 조롱 할 수 있습니다. 이것은 레거시 코드 또는 테스트 가능성을 염두에두고 설계되지 않은 타사 라이브러리를 다룰 때 특히 유용합니다. 그러나 PowerMock은 더 복잡한 것으로 간주되며 드물게 사용해야합니다.

jmock

** Jmock은 Hamcrest와 함께 사용할 수있는 Java의 또 다른 조롱 라이브러리입니다. Jmock은 Mockito만큼 널리 사용되지는 않지만 Mock 객체를 만들기위한 고유 한 기능 세트를 제공하며 Hamcrest와 통합하여보다 표현적인 주장을 할 수 있습니다.

EasyMock

** EasyMock은 Hamcrest와 함께 사용할 수있는 또 다른 인기있는 조롱 프레임 워크입니다. BDD (Behavior-Driven Development) 원칙에 중점을 둔 Mockito와 비교하여 모의 물체를 만드는 다른 접근법을 제공합니다. EasyMock은보다 고급 조롱 기능을 위해 PowerMock과 함께 사용할 수 있습니다.

assertj

** Assertj는 주장을 작성하는 유창한 API를 제공하는 어설 션 라이브러리입니다. Assertj는 Hamcrest와 독립적으로 사용될 수 있지만 전통적인 주니트 주장에 비해 더 읽기 쉽고 표현적인 주장을 제공합니다. 모킹을 위해 모키토와 함께 사용할 수 있으며보다 복잡한 일치 시나리오를 위해서는 Hamcrest를 사용할 수 있습니다.

스프링 테스트

스프링 기반 애플리케이션을 작업하는 경우 Spring Test는 스프링 구성 요소 테스트를위한 추가 도구를 제공합니다. Mockito와 잘 통합되며 서비스 나 리포지토리와 같은 스프링 특정 구성 요소를 조롱하는 데 사용할 수 있습니다. Mockito를 직접 대체하지는 않지만 Spring Test는 Spring Ecosystem에 맞는 기능을 제공합니다.

요약하면 Mockito와 Hamcrest는 단위 테스트를위한 강력한 조합을 형성하지만 Junit, PowerMock, Jmock, EasyMock, AssertJ 및 Spring Test와 같은 라이브러리는 특정 요구 및 프로젝트 요구 사항에 따라 테스트 기능을 더욱 향상시킬 수 있습니다.

인용 :
[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-versioning
[10] https://hamcrest.org/javahamcrest/distributables