问题标签 [spring-junit]

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 投票
1 回答
5918 浏览

java - Spring:为什么在每个测试类结束时不调用@PreDestroy?

我有一个集成测试类,注释如下

这是我的 AppConfiguration

出于某种原因,在所有测试结束时,我的@Componentbean都没有被调用。然而,在运行任何测试之前,它在开始时被调用。@PreDestroyCacheConsumerTest@PostConstruct

任何人都知道问题可能是什么?我的一些是@Component我想关闭的后台线程(通过调用它的@Predestroy),否则他们在后台所做的工作将导致其他测试类中的后续测试失败。

我试过添加@DirtiesContext(classMode=ClassMode.AFTER_CLASS) ,但没有帮助。

编辑:找出问题所在,我必须做一个额外的步骤才能使 DirtiesContext 工作: Spring @DirtiesContext 是否重新加载 Spring 上下文?

0 投票
1 回答
48947 浏览

spring - 没有定义名为 'org.springframework.context.annotation.ConfigurationClassPostProcessor.importRegistry' 的 bean

我正在尝试运行完整的junit测试类包,并且我的域类有一个审计类,如下所示:

- SpringBeanFactory 类:

-测试类配置:

-SpringTestingConfig 类:

-测试类注释:

当我的测试方法尝试保存实体时,它会调用 PrePersist 方法,然后调用获取 spring 服务:

这又会产生以下异常:

不得不提一下,这个异常是在运行完整包的测试类时发生的,但是当单独运行这个测试类时不会产生异常。

顺便说一句,我正在使用spring 3.2.3.RELEASE

更新:当我将 spring 版本升级到最新版本 4.0.3 时,我在同一 get UserService 行上遇到了一个新异常:

请告知如何解决此异常。

0 投票
1 回答
25756 浏览

spring - 春天我应该在每个班级上使用@DirtiesContext

我有几个junit测试,

在一个类中,所有测试都必须在相同的上下文中运行(就是这种情况)。

但我希望我所有的测试类都是独立的。我假设这是默认行为,但是当我一起运行所有测试时,它似乎运行得太快了。

它是如何工作的?每个测试类的应用程序上下文是否只启动一次?

我应该添加:@DirtiesContext(classMode= ClassMode.AFTER_CLASS)

在每个测试课上?

谢谢

0 投票
1 回答
731 浏览

spring-mvc - 由于两个 Jaxb 上下文,Junit 测试用例未运行

我正在使用 spring mvc。我在我的 App-config.xml 中配置了两个 jaxb 上下文,如下所示。因此,我在 Tomcat 服务器中运行我的项目时遇到了问题。所以我们迁移到 Liberty Was(8.0) 服务器。然后它开始正常工作。

现在,在使用 spring junit 4 runner 运行 JUnit 测试用例时,我遇到了以下错误。其实配置没问题。1)请说明配置两个 jaxb 上下文需要做什么。或 2)我们可以在单独运行 juint 时指向自定义 jaxb 实现吗?如何确定我的 Web 应用程序正在使用哪个 jaxb 上下文?

0 投票
0 回答
1058 浏览

spring-test - 基于 SpringJUnitRunner 的测试在 PIT 下失败

我有一个使用 SpringJUnitRunner 来测试控制器和过滤器的项目。当我正常运行测试时,一切运行正常。但是,当我使用 PIT 运行测试时,使用 SpringJUnitRunner 的每个测试都会出现以下异常:

应该注意的是,在这些相同的测试中,我们在使用 Emma 进行代码覆盖时也遇到了问题,因此不得不切换到 Jacoco。

SpringJUnitRunner 和 PIT 之间是否存在任何已知的不兼容性,或者我可以进行某种配置更改以使这两者能够很好地协同工作?

提前感谢您的帮助。

0 投票
1 回答
652 浏览

java - @After method being run first by JUnit

I am running into a strange issue with my JUnit test case: the @After method is invoked first by JUnit.

Here is the abstract class I use for my test:

Here is the problematic test case:

What could cause the @After method to run first? FYI, I don't use JUnit 3.

Here is the full source code for the test case: https://gist.github.com/balteo/e8c2ea96db22d3f9c88e

0 投票
1 回答
3702 浏览

junit - 为什么在运行基于 spring 的骆驼 junit 测试用例时出现 java.lang.NoSuchMethodError

我必须使用 JUnit 测试我的路由构建器并且我得到 java.lang.NoSuchMethodError,我是否缺少任何配置或者我访问路由构建器的方式应该更改。请在此处找到 RouteBuilder、上下文和 Junit 类

我创建了 JUnit 测试用例,它的上下文位于适当的 Maven 位置,如下所示

在这里我附上这两个文件

为了您的验证,我也附上日志

0 投票
2 回答
17271 浏览

java - 将 Spring 服务自动装配到 JUnit 测试中

以下是服务。

和一个配置类。

期望的目标是进行单元测试以确认getIds()返回正确的结果。请参阅下面的 JUnit 测试。

编译器会为 Filter 类找到正确的 bean,但会BeanCreationException: Could not autowire field为服务变量抛出异常。我尝试将服务类添加到 ContextConfiguration 类属性,但这会导致IllegalStateException: Failed to load ApplicationContext异常。

如何将 MyService 添加到 ContextConfiguration?

0 投票
1 回答
4300 浏览

error-handling - Spring集成errorChannel在JUnit中没有消息

我有一个简单的 JUnit 测试,我errorChannel通过连接一个service activator. 但是,该频道没有任何内容,配置如下,

ErrorMgr 如下:

}

Thrower 类如下:

Thrower SA 只是抛出一个异常,由 JUnit 测试报告,但没有任何结果errorChannel

登录调试是:

0 投票
2 回答
5008 浏览

java - 使用 Spring 依赖注入 Selenium WebDriver?

是否可以使用 Spring 注入 WebDriver?我读过它不能是单例,通常应该在 @Before 块期间实例化。我可以在那时创建它,但我希望它“神奇地”提供给一些“帮助”类,而不是手动传递对它们的引用。

更新

我通过一项测试让它在本地运行良好

但是一旦我把它放在运行并发测试的服务器上,我就会遇到这个错误。

当该工厂的单例处于销毁状态时,不允许创建单例 bean。

使用 aPrototype也不是一个好主意,因为我还想注入WebDriverBackedSelenium(需要驱动程序并最终创建 2 个实例),并且在某些原型案例中我遇到了这个问题。

嵌套异常是 org.openqa.selenium.WebDriverException: Error forwarding the new session Request timed out waiting for a node to be available