【发布时间】:2017-12-31 07:34:51
【问题描述】:
我有共享相同实体层的 Spring Boot 应用程序,直到现在这些实体在所有项目中都是重复的,并且我对每个运行良好的模块进行了测试。 我将所有实体提取到一个单独的 Maven 工件中,并将我的项目中的依赖项添加到新工件中。 除了我的测试无法运行之外,一切似乎都运行良好。 运行测试时出现以下错误:
Caused by: org.hsqldb.HsqlException: user lacks privilege or object not found: PIM_SECURITIES
at org.hsqldb.error.Error.error(Unknown Source) ~[hsqldb-2.2.8.jar:2.2.8]
at org.hsqldb.error.Error.error(Unknown Source) ~[hsqldb-2.2.8.jar:2.2.8]
at org.hsqldb.SchemaManager.getTable(Unknown Source) ~[hsqldb-2.2.8.jar:2.2.8]
at org.hsqldb.ParserDQL.readTableName(Unknown Source) ~[hsqldb-2.2.8.jar:2.2.8]
at org.hsqldb.ParserDQL.readSimpleRangeVariable(Unknown Source) ~[hsqldb-2.2.8.jar:2.2.8]
at org.hsqldb.ParserDML.compileInsertStatement(Unknown Source) ~[hsqldb-2.2.8.jar:2.2.8]
at org.hsqldb.ParserCommand.compilePart(Unknown Source) ~[hsqldb-2.2.8.jar:2.2.8]
at org.hsqldb.ParserCommand.compileStatements(Unknown Source) ~[hsqldb-2.2.8.jar:2.2.8]
at org.hsqldb.Session.executeDirectStatement(Unknown Source) ~[hsqldb-2.2.8.jar:2.2.8]
at org.hsqldb.Session.execute(Unknown Source) ~[hsqldb-2.2.8.jar:2.2.8]
at org.hsqldb.jdbc.JDBCStatement.fetchResult(Unknown Source) ~[hsqldb-2.2.8.jar:2.2.8]
at org.hsqldb.jdbc.JDBCStatement.execute(Unknown Source) ~[hsqldb-2.2.8.jar:2.2.8]
下面是我的spring boot测试类的定义
@ContextConfiguration(classes = {AccountsDao.class, SecuritiesDao.class, TasksDao.class})
@RunWith(SpringRunner.class)
@DataJpaTest
@Transactional
@ActiveProfiles("test")
public class DalLayerTests extends
AbstractTransactionalJUnit4SpringContextTests {}
未找到的对象在实体工件中。
我尝试添加工件以在 maven 中使用测试范围运行,但没有帮助。 我试图将它添加到注释 @ContextConfiguration(classes) 但它也没有帮助。
您的帮助将不胜感激。
【问题讨论】:
标签: java spring maven testing spring-boot