【发布时间】:2012-10-19 14:39:04
【问题描述】:
在 Spring Batch 作业中测试以下场景的方法是什么:
1) 一个独立的 tasklet 在 spring 批处理作业的一个 step 中运行。
2) 一个由多个步骤组成的作业,其中一些步骤具有 itemreader、itemprocessor、itemwriters,而一些步骤具有 tasklet。
3) 项目阅读器的输入查询是一个非常复杂的 sql 查询,其中包含来自许多表的连接 - 这种情况将不允许清空所有使用的表并使用虚拟数据填充它们以进行测试。换句话说,在现实世界中可能存在无法清空表进行测试的情况。在这种情况下应该采取什么方法?
如果我在这个论坛上获得关于所采取方法的一点帮助,我想准备一个示例套件,其中包含有关测试具有不同工作场景的 spring 批处理作业的示例。
【问题讨论】:
-
一般注意事项:确保您最终不会编写有效测试数据库或 Spring Batch 的测试。这意味着您可以使用以下技术(即使用 HSQLDB)来模拟数据库及其表。这可以使用内存数据库完成,因此比使用真实数据库要快很多倍。
标签: junit spring-batch