Service Unit Test 报告 “not a domain class” 的问题

Service Unit Test 不能调用 GORM save() 等方法的问题

Either class [homemaking.domain.account.Role] is not a domain class or GORM has not been initialized correctly or has already been shutdown. Ensure GORM is loaded and configured correctly before calling any methods on a GORM entity.

原因:
发现是修改了 domain 所在的包名导致的问题,如果不改包名,就不会有问题。
具体来说就是 domain 测试类所在的包名必须对应 domain 所在的包名,即 测试类是 homemaking.UserServiceSpec 那么 domain class 必须在 homemaking 包下!

并且和 profile 没有多大关系,即 profile = rest-api-plugin 的也能正确执行 service unit test!

因此,当报告 “is not a domain class or GORM has not been initialized correctly”错误时,需要检查:

  1. 测试类是否 extends HibernateSpec 而非 Specification
  2. 测试类的包是否和domain 类的包名一致

猜你喜欢

转载自blog.csdn.net/yangbo_hr/article/details/106736323