繁体   English   中英

使用@SpringApplicationConfiguration进行JUnit测试会自动启动Job

[英]JUnit test with @SpringApplicationConfiguration start automatically the Job

我正在为春季启动批处理编写Junit测试。 在我的JUnit中,我想以此启动一个步骤:

JobExecution jobExecution = jobLauncherTestUtils.launchStep("y");

我的JUnit类用theese注解:

@SpringApplicationConfiguration(classes = { MyBatchConfiguration.class })
@RunWith(SpringJUnit4ClassRunner.class)

我的问题是,即使测试方法内部没有任何内容,该测试也会像正常方式一样启动我的所有批处理作业。 这是我的BatchConfFile上的注释

@Configuration
@EnableBatchProcessing
@EnableAutoConfiguration
@ConditionalOnClass({ JobLauncher.class })
@ComponentScan({ "toto" })

然后我的测试自动启动了作业:(

@Bean
public Job MyJob(@Qualifier("x") Step x, 
@Qualifier("y") Step y) {

        return jobs.get("j").incrementer(new DateJobIncrementer()).start(x).next(y).build();
    }

只需使用以下内容创建src/test/resources/application.properties文件:

spring.batch.job.enabled=false # Do not execute all Spring Batch jobs in the context on startup.

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM