Spring Batch中带注释的步骤配置,如何测试

时间:2016-10-05 20:01:34

标签: spring spring-batch

我只使用带批注的弹簧批,我想测试一个配置如下的步骤:

@Bean("findMe")
@Qualifier("findMe")
public Step findMe() {
     return stepBuilderFactory.get("findMe"). ... some step configuration
}

测试:

@Test
public shouldRunTheJob() {
    JobLauncherTestUtils.launchJob("findMe");
} 

我无法解决这个问题,除此之外我还能测试所有其他级别,我怎样才能解决这样的注释工作?

1 个答案:

答案 0 :(得分:0)

根据我对你的问题的理解,你想测试一个步骤,而不是一个工作。

尝试使用以下示例测试类进行步骤测试。

@RunWith(SpringRunner.class)
@ContextConfiguration(classes = YourClassToTest.class)
public class StepTest {

    @Autowired
    private JobLauncherTestUtils jobLauncherTestUtils;

    @Test
    public void testStep() throws Exception {
       JobExecution jobExecution = jobLauncherTestUtils.launchStep("findMe");
       // your test case, e.g. assert something on the jobExecution
    }    
}

有关详细信息,请参阅spring批处理文档here