apache-camelTesty integracyjne na istniejących trasach z Apache-Camel i Spring (i DBUnit)


Wprowadzenie

Celem tej wiki jest pokazanie, jak przeprowadzać testy integracyjne przy użyciu Apache Camel.

Mówiąc dokładniej, będziesz w stanie uruchomić istniejącą trasę od początku do końca (z prawdziwą bazą danych lub bez niej) lub przechwycić wymianę między każdą częścią trasy i sprawdzić, czy nagłówki lub treść są poprawne, czy nie.

Projekt, nad którym to robię, wykorzystuje klasyczną Spring z konfiguracją XML i DBUnit do wyśmiewania testowej bazy danych. Mam nadzieję, że da ci to kilka wskazówek.

Parametry

Parametr / funkcja Detale
Wymieniać się Wymiana jest wykorzystywana wewnątrz procesora wielbłąda do przekazywania obiektów między częściami trasy
CamelContext Kontekst wielbłąda jest używany w teście do ręcznego uruchamiania i zatrzymywania kontekstu.
ProducerTemplate Umożliwia wysyłanie wiadomości na trasie, ręczne ustawianie całej wymiany lub wysyłanie fałszywych nagłówków / treści
Porada Z Pomaga przedefiniować istniejącą trasę w bieżącym kontekście
WeaveById Używany wewnątrz porady z konfiguracją, mówi fragmentom trasy, jak się zachować (może również używać weaveByToString )
MockEndpoint Mockendpoint jest punktem, który określasz dla swojego testu. WeaveById możesz wskazać trasę do jej zwykłego przetwarzania i przejść do mockEnpoint zamiast podążać zwykłą trasą. W ten sposób możesz sprawdzić liczbę wiadomości, status wymiany ...

Uwagi

Niektóre podane tu definicje nie są idealnie dokładne, ale pomogą ci zrozumieć powyższy kod. Oto kilka linków do bardziej szczegółowych informacji:

Ten szczególny sposób testowania jest dość trudny do znalezienia, nawet przy przepełnieniu stosu. Jest to dość specyficzne, ale nie wahaj się zapytać o więcej szczegółów, może będę w stanie pomóc.

Testy integracyjne na istniejących trasach z Apache-Camel i Spring (i DBUnit) Powiązane przykłady