2

我正在开发一个 Spring MVC 应用程序。

单元测试已经编写好了(85% 的代码覆盖率和大量断言 :)

现在我需要编写集成测试。我已经看过stackoverflow了我还有一些问题

  • 现在我正在使用带有主目录和测试目录的标准 maven 结构,您是否建议创建另一个名为 integration-tests 的目录并在那里编写单元测试?如果是这样,为什么?
  • 另一种选择是在“tests”目录中编写集成测试,混合单元测试和集成测试,然后使用 maven 运行一个或另一个(可能根据测试类型使用不同的文件后缀)
  • 无论如何,我计划运行集成测试的方式本质上是(几乎)重用控制器的单元测试而不注入模拟,这意味着我当前的堆栈(Controller-Service-DAO)将不包含模拟(当然,在单元测试中确实如此),通过删除我将访问真实资源(数据库等)的模拟,这是一个好方法吗?

更新:澄清一下,该项目没有 JSP 或任何与 HTML 相关的视图,输出是 XML,可以使用 XSD 轻松验证

4

1 回答 1

0

我假设您已使用 JUNIT 创建单元测试以实现令人印象深刻的 85% 的代码覆盖率。请注意,JUNIT 仅用于单元测试(因此命名为 JUNIT)。单元测试是在代码在开发环境中运行时完成的。

只有在目标集成环境中部署了目标代码后,才能执行集成测试。

您提到您的应用程序不是 Web 应用程序。它是 SOAP/Rest Web 服务吗?如果是这样,您可以使用 Soap UI [http://www.soapui.org/] 来创建和保存自动回归/集成测试。

于 2013-07-01T23:16:37.407 回答