問題タブ [camel-test]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
617 参照

java - Apache Camel は、JSON パス式を使用して JSON 本文フィールド値をテストおよびアサートします。

JSON文字列である本文のフィールド値を で確認しようとしていますJsonPathExpression

以下の例でJsonPathExpressionは、ルート JSON オブジェクトに " " という名前のフィールドがあるかどうかがチェックされtypeます。私が達成したいのはJsonPathExpression、フィールド値 " type" が特定の文字列値に等しい場合を使用してアサートすることです。

注:メッセージ本文を抽出する方法が他にもあることは知っていますが、MockEndpoint#getReceivedExchangesそれはアサーションの範囲外であるため、使用したくありません。

これが私のテストクラスです。

0 投票する
2 に答える
79 参照

apache-camel - Camel Tests で実行された中間ルートの本体をモックする

Camel Test コンポーネントの利用可能な使用例は、ルートの期待値をテストする方法を示しています。

ただし、私がする必要があるのは、中間ルートの本体をモックする (手動で設定する) ことです。

このシナリオでは、bean:exampleBean の実際の実行を完全に回避し、その実行結果をモックしたいと考えています。

私のテストクラス:

これを使用mockBeanExampleBean.whenAnyExchangeReceived(exchange -> exchange.getMessage().setBody("My message"));すると、exampleBean への入力をオーバーライドできますが、その実行は回避されません。