我是Camel测试的新手,无论我如何更改消息,此测试总是通过。如果你能告诉我我做错了什么,我会非常感激。
这是断言:
XPathExpression xpath = new XPathExpression("/project/phases/phase/@id='CFA001'");
xpath.setResultType(Boolean.class);
_resultEndpoint.allMessages().body().matches(xpath);
我用以下方法测试:
_resultEndpoint.assertIsSatisfied();
我确实尝试了各种其他版本的方法。他们都没有按预期工作。
问题是,如何对(预期的)XML消息的内容(正文)进行XPath测试
干杯
答案 0 :(得分:0)
好吧......对我来说似乎有些奇怪,但补充道:
.expectedMessageCount(1);
......断言似乎解决了这个问题。至少假设失败的测试失败了。所以,这里的完整断言应该是这样的:
MockEndpoint作为类成员:
@EndpointInject(uri = "mock:result")
protected MockEndpoint _resultEndpoint;
断言:
_resultEndpoint.expectedMessageCount(1);
XPathExpression xpath = new XPathExpression("/project/phases/phase/@id='CFA001'");
xpath.setResultType(Boolean.class);
_resultEndpoint.allMessages().body().matches(xpath);