33장. mock
생산자만 지원됩니다.
분산 및 비동기 처리 테스트가 매우 어렵습니다. Mock,Test and Dataset 엔드포인트는 Camel 테스트 프레임워크와 함께 강력한 빈 통합 통합과 함께 엔터프라이즈 통합 패턴 및 Camel의 다양한 구성 요소를 사용하여 단위 및 통합 테스트를 단순화합니다.
Mock 구성 요소는 강력한 선언적 테스트 메커니즘을 제공합니다. 이 메커니즘은 테스트가 시작되기 전에 모든 Mock 끝점에서 선언적 기대치를 만들 수 있다는 점에서 jMock 과 유사합니다. 그런 다음 테스트가 실행되어 일반적으로 하나 이상의 끝점에 메시지를 발생시키고 마지막으로 시스템이 예상대로 작동하는지 확인하기 위해 테스트 사례에서 기대치를 어설션할 수 있습니다.
이렇게 하면 다음과 같은 다양한 사항을 테스트할 수 있습니다.
또한 Mock 엔드포인트인 Test 엔드포인트 가 있지만, 두 번째 엔드포인트를 사용하여 예상 메시지 본문 목록을 제공하고 Mock 엔드포인트 어설션을 자동으로 설정합니다. 즉, 파일 또는 데이터베이스 의 일부 샘플 메시지에서 해당 어설션을 자동으로 설정하는 Mock 끝점입니다.
mock 엔드포인트는 Exchange를 메모리에 무기한 수신했습니다.
Mock은 테스트를 위해 설계되었습니다. 경로에 Mock 엔드포인트를 추가하면 명시적으로 재설정되거나 JVM이 다시 시작될 때까지 각 Exchange가 끝점으로 전송된 각 Exchange가 메모리에 저장됩니다(나중에 유효성 검사 허용). 대용량 및/또는 대용량 메시지를 보내는 경우 과도한 메모리 사용이 발생할 수 있습니다. 배포 가능한 경로를 인라인으로 테스트하는 것이 목표라면 라우팅에 Mock 엔드포인트를 직접 추가하는 대신 NotifyBuilder 또는 AdviceWith를 테스트에서 사용하는 것이 좋습니다. 두 개의 새로운 옵션이First를 유지하며, Mock 엔드포인트가 메모리에 유지되는 메시지 수를 제한하는 데 사용할 수 있는 retainLast입니다.
33.1. URI 형식
mock:someName[?options]
여기서 someName
은 끝점을 고유하게 식별하는 모든 문자열일 수 있습니다.