使用TestNG + Spring,如何在一次测试中将@Bean配置设为本地?

时间:2016-11-25 16:00:01

标签: spring unit-testing testing testng integration-testing

我在我的一个TestNG测试中添加了@Configuration注释和@Bean定义,以便使用模拟覆盖深@Autowired个对象。

问题是,这已经搞砸了我所有其他集成测试,我需要真正的@Autowired对象。如何将@Bean配置本地化为我想要模拟的一个测试?

我已经尝试了@DirtiesContext(classMode=ClassMode.AFTER_CLASS)注释但这次没有用(虽然我已经在其他情况下成功使用过它)。

1 个答案:

答案 0 :(得分:0)

添加这两个类级别的注释:

@ActiveProfiles({"this-test-name"})
@Profile("this-test-name")

this-test-name是导致问题的特定测试的唯一名称。