0

我可以知道如何在Grails测试用例运行中打印出Hibernate调试日志。

我已经配置在DataSource.groovy

dataSource {
    ...
    logSql = true 
}

environments {
 ... 
    test {
        dataSource {
           dbCreate = "none"
           url = "jdbc:mysql://localhost/church?useUnicode=yes&characterEncoding=UTF-8"
        logSql = true
         }
     hibernate {
       show_sql = true
         }
     }
 ...
}

并使用记录器在测试用例和控制器类中写入日志,但Hibernate在测试用例控制台中看不到相应的调试日志。

请指教。谢谢 !

4

2 回答 2

0

谢谢dmahapatro。在我将测试用例移到 test/integration 文件夹下之后。有用。我没有注意到单元测试不能与休眠一起使用。只是交叉检查了 grails 文档,它指出

在测试使用域类的非域工件时,最好使用此处描述的模拟支持,让您专注于测试工件而不需要数据库。但是在测试持久性时,最好使用配置 Hibernate 并使用数据库的集成测试。

http://grails.org/doc/latest/guide/testing.html#unitTestingDomains

于 2013-07-12T10:59:14.767 回答
0

如果你使用 HibernateSpec,你可以在单元测试中使用它。DomainUnitTest 在内存映射中使用,但 HibernateSpec 使用休眠和内存中的 h2。请参阅此处的文档。

于 2021-05-01T21:20:32.673 回答