1
  • 单元测试不需要数据库。
  • 集成和功能测试可以有不同的夹具和引导数据。
  • 最好将应用程序本身和 Selenium 测试机器人的功能测试分开。

那么,是否有任何理由将所有测试阶段保留在一个环境中?

4

1 回答 1

1

我想这只是一个约定,因为:

  • 单元测试的设置配置了一个内存数据库,让您可以使用 GORM 方法。
  • 只有在运行集成测试时才会初始化您的数据库。
  • 功能测试被视为扩展,并且取决于您的项目,它们不是强制性的(例如:不依赖 UI 的插件项目)。

没有什么能阻止您定义自定义环境对其运行特定命令您还可以使用Environment 类根据您的环境创建 Spring Bean 并配置数据库访问。

if(Environment.current == Environment.DEVELOPMENT) {
  ...
}
于 2013-08-15T17:23:07.797 回答