目前,我正在为Spring Batch应用程序进行一些集成测试。这样的应用程序从SQL表读取,在另一个表上写入,最后生成一个作为.txt
文件的报告。
起初,我只是想确保我有另一个文件具有预期的输出,并将其与报告文件进行比较并检查表内容。
((在某些情况下,我对Spring经验不足)。
但是,在阅读了有关Baelung的一些文章之后,我对最初的方法感到怀疑。
我应该在代码中操纵表内容以确保获得期望的输入吗?我应该使用Spring测试框架工具吗?没有他们,我可以通过测试来运行作业吗?
批处理作业集成测试的正确方法是将作业作为黑匣子进行测试。如果作业从表中读取数据并写入另一个表或文件,则可以执行以下操作:
您可以在参考文档的End-To-End Testing of Batch Jobs部分中找到更多详细信息。 Spring Batch提供了一些测试实用工具,这些工具可能有助于测试您的工作(例如模拟批处理域对象,声明文件内容等)。请参阅org.springframework.batch.test程序包。