对于我们的Web应用程序,我们在Resources类中编写了大部分代码。现在,我们希望使用"简单集成测试"进行junit测试对Web模块进行单元测试。
但我们只能通过这种包装测试我们的存储库而不是测试者和其他业务逻辑。
我们是否需要将代码从Resource类移动到可以在单元测试中注入的应用程序服务?如果是,我们可以在Web模块中编写这些服务吗?通常我们在应用程序模块中编写这些服务,但在这种情况下,服务无法访问Web中的查找程序
答案 0 :(得分:0)
您的资源类应该只包含公开应用程序REST API所需的代码:没有业务逻辑,没有应用程序(用例)逻辑,没有数据访问。资源类只应使用其他组件(如存储库,服务和查找程序)来实现所需的结果。
在SeedStack项目中,特别是如果您正在使用业务框架,建议您尊重DDD层模型:
您可以使用单元测试和simple integration tests测试任何这些组件,但REST资源除外,因为它们依赖于Web运行时环境。这些只能在Web integration tests(使用Arquillian)进行测试。