0

Grails 版本:3.3.5

我正在将旧版 Web 应用程序移植到最新的 grails。有 500 多个集成测试。每种集成测试方法都需要在测试开始前将复杂数据加载到数据库中,并在最后进行清理。数据加载和稍后的测试代码应该在一个事务中运行,以便测试代码能够看到加载的数据。我尝试使用 spock run listener 进行数据加载。不幸的是,应用程序上下文或在方法运行dataSource时未加载。请建议实现这一点的最佳方法。有人可以知道加载测试和执行测试涉及哪些 grails/spock 类吗?非常感谢任何帮助或提示。谢谢。beforeSpecbeforeFeature

4

1 回答 1

0

据我从问题中了解到,以下是您可以尝试的几件事。

  • 仅当所有测试在某种程度上共享相同的数据时,才能在 Bootstrap 中为测试环境加载数据库数据。
  • 在运行任何夹具方法之前,在方法上尝试 @RunOnce 和 @Before 以加载数据。
  • 看看build-test-data插件。

文档也可能有所帮助。

于 2018-06-03T12:44:12.923 回答