首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在STS中运行JUnit集成测试Spring/JHipster

问在STS中运行JUnit集成测试Spring/JHipster
EN

Stack Overflow用户
提问于 2016-06-08 21:08:14
回答 1查看 2.2K关注 0票数 0

我使用v3.4.0 (使用Gradle)生成了一个Jhipster。

我正在尝试从STS运行和调试单元测试。

来自文件:

这些测试可以直接在IDE中运行,方法是右键单击每个测试类,或者运行mvn干净测试(如果运行Gradle,则运行./gradlew测试)。

当gradle任务$.gradlew test按预期执行时,当我尝试“右键单击”和Run As Junit Test或Debug As Junit测试时,我会得到数据库周围的异常:

堆栈痕迹的一小部分:

org.springframework.beans.factory.BeanCreationException:错误创建名为'org.springframework.security.config.annotation.web.configuration.WebSecurityConfiguration':的bean自动依赖项注入失败;嵌套异常是org.springframework.beans.factory.BeanCreationException:不能自动创建的方法:公开无效org.springframework.security.config.annotation.web.configuration.WebSecurityConfiguration.setFilterChainProxySecurityConfigurer(org.springframework.security.config.annotation.ObjectPostProcessor,java.util.List)抛出java.lang.Exception;嵌套异常是org.springframework.beans.factory.BeanExpressionException:表达式解析失败;嵌套异常是名为‘securityConfiguration’的org.springframework.beans.factory.BeanCreationException:错误创建bean :自动配置依赖项注入失败;嵌套异常为org.springframework.beans.factory.BeanCreationException:无法自动更新字段:私有org.springframework.security.core.userdetails.UserDetailsService web.myapp.core.config.SecurityConfiguration.userDetailsService;嵌套异常是org.springframework.beans.factory.BeanCreationException:错误创建名为‘userDetailsService’的bean :注入自动依赖项失败;嵌套异常是org.springframework.beans.factory.BeanCreationException:无法自动生成字段:私有web.myapp.core.security.UserDetailsService.userRepository;嵌套异常是org.springframework.beans.factory.BeanCreationException:错误创建bean,其名称为“userRepository”:无法创建org.springframework.orm.jpa.SharedEntityManagerCreator类型的内部bean ( inner )#1c752902‘,同时设置bean属性’实体管理器‘;嵌套异常是在设置构造函数参数时不能解析对bean 'entityManagerFactory‘的引用;嵌套异常是org.springframework.beans.factory.BeanCreationException:错误创建名为'entityManagerFactory’的类路径资源org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class:调用init方法失败;嵌套异常是org.hibernate.cache.NoCacheRegionFactoryAvailableException:二级缓存,但没有给出属性hibernate.cache.region.factory_class;请禁用二级缓存或使用hibernate.cache.region.factory_class设置设置正确的区域工厂,并确保二级缓存提供程序(hibernate-无穷大)。在类路径上可用。

我的假设是没有初始化测试数据库的正确配置文件:src/test/resources/application.yml。

对在STS中设置此配置文件有任何建议吗?

更新

我已经更新了每个https://jhipster.github.io/configuring-ide-eclipse-gradle/的屏幕商店。

  1. 没有资源过滤器的Project Properties > Resource > Resource Filters (没有一个是在导入项目时由STS添加的)

​

  1. 选中build/generated/source/apt/main以确保将添加到 Project Properties > Java Build Path下的构建路径设置中。

​

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-10 16:29:26

我也遇到了同样的问题,我就是这样做的:

  1. 首先需要至少运行一次测试,作为gradle构建任务的一部分,然后才能与JUnit交互地运行它
  2. JHipster默认情况下只生成名为*UnitTest或*IntTest的build.gradle文件。如果您有此默认配置,但已将测试命名不同,那么上面的步骤1将无法工作,因为尽管构建可能成功完成,但它尚未实际运行您的测试,因此仍然不能在JUnit中运行。
  3. 按照上面添加的屏幕截图中的步骤对原始问题进行更新。 现在尝试以JUnit测试的形式运行。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37712968

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档