【发布时间】:2020-09-12 20:44:03
【问题描述】:
在我的应用程序中,我有多个作业所以我创建了动态作业。我在运行此应用程序时没有问题。我想对动态创建的作业进行单元测试。
我想将我的工作设置为 JobLauncherTestUtils 。
@RunWith(SpringRunner.class)
@SpringBatchTest()
@TestExecutionListeners({ DependencyInjectionTestExecutionListener.class, DirtiesContextTestExecutionListener.class })
@DirtiesContext(classMode = ClassMode.AFTER_CLASS)
@PropertySource("classpath:application.yml")
public class SpringBatchIntegrationTest {
@Inject
private JobRepository jobRepository;
@Inject
private JobLauncher mJobLauncher;
private JobLauncherTestUtils jobLauncherTestUtils;
@Inject
BatchJobConfig mBatchJobConfig;
public void initailizeJobLauncherTestUtils() {
jobLauncherTestUtils = new JobLauncherTestUtils();
jobLauncherTestUtils.setJobRepository(jobRepository);
jobLauncherTestUtils.setJob(mBatchJobConfig.createJob());
jobLauncherTestUtils.setJobLauncher(mJobLauncher);
}
这就是我初始化 JobLauncherTestUtils 的方式。当我运行它时,我得到以下错误 创建名为 'jobLauncherTestUtils' 的 bean 时出错:通过方法 'setJob' 参数 0 表达的不满足的依赖关系;谁能告诉我如何对动态作业进行春季批量测试。 我对 Junit 了解不多。我刚开始学习
【问题讨论】:
标签: java spring-boot unit-testing junit spring-batch