问题标签 [spring-boot-test]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4906 浏览

java - 使用 TestHazelcastInstance 测试 HazelcastClient

有一个基于 spring-boot 的 hazelcast 微服务,它通过HazelcastClient.

考虑到集群是使用 ? 模拟的,编写集成测试的过程是TestHazelcastInstance什么?

尝试创建一个@TestConfiguration提供 的配置类TestHazelcastInstance,但在这种情况下,另一个配置类HazelcastConfig(提供客户端)似乎没有执行,导致客户端实例没有被实例化。

有什么见解吗?

应用程序.java

HazelcastConfig.java(提供客户端):

AppTest.java,有问题的测试:

TestConfig.java,提供TestHazelcastInstance

0 投票
1 回答
2987 浏览

java - Spring Boot集成测试在一个接一个运行时失败

我有一个 Spring Boot 集成测试和一个 Spring Boot Web 集成测试。两个测试在单独运行时都通过。但是,当作为套件的一部分运行时,第二个执行的测试总是失败。每个测试都会启动(并拆除)我的应用程序,进而启动我的h2数据库。我已经尝试过交换测试的顺序,并且总是后一个测试失败。

我能做些什么来确保这些测试是独立的/不会相互影响?

注意:我使用类注释@RunWith(SpringRunner.class)@SpringBootTest两个测试,Web 集成测试将参数传递webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT给后一个注释。

集成测试:

网络集成测试:

0 投票
0 回答
936 浏览

spring-boot - 测试 Spring Boot 身份验证令牌和 CSRF 安全性

我已经将我的 SpringBoot 应用程序配置为使用身份验证令牌和 CSRF 令牌进行身份验证:

这意味着我可以使用 curl 来获取 auth 令牌和 csrf 令牌:

然后使用它们调用服务上的其他方法:

这完全符合预期,但我想在 SpringBoot 中编写一个自动化测试来做同样的事情。我可以得到 csrf 令牌:

但不是身份验证令牌,我只是得到空值。我可以将 csrf 令牌插入后续调用:

但是,它当然无法进行身份验证。关于如何完成这项工作的任何建议?

0 投票
1 回答
43 浏览

junit - 如何为 Junits 模拟 applog

实际上,我正在使用@Autowired AppLog.

并使用this.applog.logInfo("field",+object.getFieldName()),他们正在尝试打印值。

我不知道如何嘲笑这件事。

我已经在使用@RunWith(SpringRunner.class).

powerMock 在这种情况下可以提供帮助吗?如果有人可以提供帮助,我将不胜感激。

0 投票
1 回答
3797 浏览

spring - SpringBootTest with MockBean is not returning what I expect

Versions:

Application Main:

My Service Interface:

My Service Implementation:

My Test class:

Expected Output: I am greater than epic Actual Output: null

I simply want to replace the bean instance in the context with a mock that will return "I am greater than epic". Have I misconfigured something here?

0 投票
2 回答
2561 浏览

java - Spring Boot 应用程序从 JUnit 测试启动,但无法通过 URL 访问

我有一个 JUnit 测试来启动我的 spring boot appcliation (Application.java)。

如果我运行 JUnit 测试,应用程序已成功启动,但无法通过 url 访问

应用程序日志:

当我尝试通过 url ' http://localhost:8080/process ' 访问应用程序时,它说无法访问站点。

在此处输入图像描述

0 投票
1 回答
1136 浏览

java - 从 Junit Test 运行时,Spring Boot 应用程序抛出异常

我有一个 Spring Boot 应用程序,它在从 JUnit 测试运行时抛出一些异常“java.lang.IllegalStateException:无法加载 TestContextBootstrapper [null]”。

pom.xml:

由于这个 pom.xml 有不同的 spring 版本,如 spring 4.2.5.RELEASE 和 spring-boot 1.4.2.RELEASE,当它从 JUnit Test 运行时会抛出异常:

JUnit 日志:

关于spring和spring-boot之间的版本匹配有什么建议吗?

0 投票
1 回答
1614 浏览

java - Spring Boot 的执行器端点在测试期间不可用

我有一个包含执行器的 Web 应用程序,该执行器在上下文路径/manage下公开,并且仅通过 spring 安全集成提供给具有角色“管理员”的用户。事实上,该应用程序确实按预期工作。但是,我正在努力测试 Web 应用程序,即使用 Spring Boot 的工具编写集成测试。

运行一个像下面这样加载弹簧上下文的测试,我注意到执行器端点没有注册。

日志文件片段

application.properties 中的相关片段如下所示。

有人可以帮助我,让我知道我在这里做错了什么以及如何解决被拒绝的 bean-name 问题以继续进行吗?

就我而言,弹簧靴和执行器的版本是1.5.2.RELEASE

0 投票
1 回答
901 浏览

java - 与@Transactional JUnit 测试一起使用时,@Temporal 注释不起作用

我使用 Spring Boot 和 Oracle 11g 进行了简单的 CRUD 操作,我的实体类如下所示:

我的 JUnit 看起来像

最后一个 log.info 在使用 @Transactional 注释运行时会抛出 NullPointerException,但否则工作正常,并且 DB 会填充预期值。

这是 @Transactional 的行为方式还是 Hibernate 没有在事务性 JUnit 中为 Dates 插入任何值?

0 投票
0 回答
642 浏览

spring-boot-test - spring boot 单元测试活动配置文件

spring bootmain使用mysqlinapplication.propertiestest使用h2in application-ut.properties。但是,在运行测试时,在控制台中会显示active profile: ut,但test仍使用datasource application.properties. 一旦我删除application.properties测试将使用h2.

测试

聚甲醛:

应用程序-ut.properties:

应用程序属性:

控制台