问题标签 [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.
java - Spring:为什么在每个测试类结束时不调用@PreDestroy?
我有一个集成测试类,注释如下
这是我的 AppConfiguration
出于某种原因,在所有测试结束时,我的@Component
bean都没有被调用。然而,在运行任何测试之前,它在开始时被调用。@PreDestroy
CacheConsumerTest
@PostConstruct
任何人都知道问题可能是什么?我的一些是@Component
我想关闭的后台线程(通过调用它的@Predestroy),否则他们在后台所做的工作将导致其他测试类中的后续测试失败。
我试过添加@DirtiesContext(classMode=ClassMode.AFTER_CLASS)
,但没有帮助。
编辑:找出问题所在,我必须做一个额外的步骤才能使 DirtiesContext 工作: Spring @DirtiesContext 是否重新加载 Spring 上下文?
spring - 没有定义名为 'org.springframework.context.annotation.ConfigurationClassPostProcessor.importRegistry' 的 bean
我正在尝试运行完整的junit测试类包,并且我的域类有一个审计类,如下所示:
- SpringBeanFactory 类:
-测试类配置:
-SpringTestingConfig 类:
-测试类注释:
当我的测试方法尝试保存实体时,它会调用 PrePersist 方法,然后调用获取 spring 服务:
这又会产生以下异常:
不得不提一下,这个异常是在运行完整包的测试类时发生的,但是当单独运行这个测试类时不会产生异常。
顺便说一句,我正在使用spring 3.2.3.RELEASE
更新:当我将 spring 版本升级到最新版本 4.0.3 时,我在同一 get UserService 行上遇到了一个新异常:
请告知如何解决此异常。
spring - 春天我应该在每个班级上使用@DirtiesContext
我有几个junit测试,
在一个类中,所有测试都必须在相同的上下文中运行(就是这种情况)。
但我希望我所有的测试类都是独立的。我假设这是默认行为,但是当我一起运行所有测试时,它似乎运行得太快了。
它是如何工作的?每个测试类的应用程序上下文是否只启动一次?
我应该添加:@DirtiesContext(classMode= ClassMode.AFTER_CLASS)
在每个测试课上?
谢谢
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 上下文?
spring-test - 基于 SpringJUnitRunner 的测试在 PIT 下失败
我有一个使用 SpringJUnitRunner 来测试控制器和过滤器的项目。当我正常运行测试时,一切运行正常。但是,当我使用 PIT 运行测试时,使用 SpringJUnitRunner 的每个测试都会出现以下异常:
应该注意的是,在这些相同的测试中,我们在使用 Emma 进行代码覆盖时也遇到了问题,因此不得不切换到 Jacoco。
SpringJUnitRunner 和 PIT 之间是否存在任何已知的不兼容性,或者我可以进行某种配置更改以使这两者能够很好地协同工作?
提前感谢您的帮助。
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
junit - 为什么在运行基于 spring 的骆驼 junit 测试用例时出现 java.lang.NoSuchMethodError
我必须使用 JUnit 测试我的路由构建器并且我得到 java.lang.NoSuchMethodError,我是否缺少任何配置或者我访问路由构建器的方式应该更改。请在此处找到 RouteBuilder、上下文和 Junit 类
我创建了 JUnit 测试用例,它的上下文位于适当的 Maven 位置,如下所示
在这里我附上这两个文件
为了您的验证,我也附上日志
java - 将 Spring 服务自动装配到 JUnit 测试中
以下是服务。
和一个配置类。
期望的目标是进行单元测试以确认getIds()返回正确的结果。请参阅下面的 JUnit 测试。
编译器会为 Filter 类找到正确的 bean,但会BeanCreationException: Could not autowire field
为服务变量抛出异常。我尝试将服务类添加到 ContextConfiguration 类属性,但这会导致IllegalStateException: Failed to load ApplicationContext
异常。
如何将 MyService 添加到 ContextConfiguration?
error-handling - Spring集成errorChannel在JUnit中没有消息
我有一个简单的 JUnit 测试,我errorChannel
通过连接一个service activator
. 但是,该频道没有任何内容,配置如下,
ErrorMgr 如下:
}
Thrower 类如下:
Thrower SA 只是抛出一个异常,由 JUnit 测试报告,但没有任何结果errorChannel
登录调试是:
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