【问题标题】:Integration tests with JUnit and web MVC使用 JUnit 和 Web MVC 进行集成测试
【发布时间】:2013-07-01 07:03:30
【问题描述】:

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

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

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

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

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

【问题讨论】:

    标签: java unit-testing spring-mvc integration-testing


    【解决方案1】:

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

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

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

    【讨论】:

    • 该应用程序是一个 Web 服务,但它不使用 SOAP。
    猜你喜欢
    • 2012-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多