我有2个Web应用程序,它们都有Web服务。假设应用程序有3个Web方法和应用程序第二个应用程序只有1个Web方法可以返回不同的结果。此外,app app中的所有web方法都在应用程序中调用Web方法。
目标是应用程序One的创建集成测试。
我可以在app One中为每个web方法创建soapui测试,并添加第二个应用程序的模拟。但是当每个方法的测试并行执行时,我必须“告诉”模拟“现在你返回那些数据,但现在却产生异常”。我需要那个模拟能够识别它在应用程序One中从1,2或3 web方法接收第二个应用程序的请求。当我创建应用程序One的请求时,我无法控制它对应用程序的子请求。因此,为了区分它们,我必须(以某种方式)标记整个请求链:
Request1 -> App One (WebMethod1) -> SubRequest1 -> Mock
例如,如果我可以在Request1中添加Http头,也可以将其重新转换为SubRequest1,Mock将分析此头并返回/抛出我想要的内容。但实际上HttpHeader没有重新翻译。我可以为此添加java代码,但仅用于测试的代码不是很好。
有没有办法或方法进行测试?这是一个简化的例子,在实际情况中,有2个传达的应用程序和更多的Web方法。
重要
这个问题与单元测试或EasyMock,PowerMock和Mockito无关。这些框架与单元测试有关,但我想进行集成测试。