使用来自csv文件的Spring读取数据运行测试

问题描述 投票:1回答:1

我正在尝试多次运行测试,从csv文件中读取所需的输入数据。我想为文件的每一行运行测试。

我打算手动完成,但我发现了Spring Batch。我是春季批次的新手,但我想到了以下几点:

  • 创建一个实现命令行运行器的spring boot应用程序。
  • 在run方法中,启动spring批处理作业
  • 此作业将逐行读取csv文件中的数据,并且对于每一行,将为当前行的数据运行@Test方法。

这种方法可以吗?有没有更好的方法呢?你能提供一些关于如何做的示例代码吗?

谢谢。

file csv testing spring-batch
1个回答
0
投票

在我看来,这不是一个好的方法,因为你试图为单元测试增加不必要的复杂性,并且还有Job,Job Meta数据,内存数据库等概念。

另外,Spring批处理并不仅仅是为了读取文件行,而是使用Spring Batch,编写器也是必需的。

通过这种方法,控制也是相反的。您的测试应该控制一切并成为驱动程序,但通过这种方法,Spring Batch作业成为测试驱动程序。

您应该只是在BeforeBeforeClass方法中读取文件行,并使用主@Test方法在循环中调用私有测试方法(对于每一行,此私有方法具有实际测试逻辑)。如果循环成功,则测试成功。

您正在使用@Test注释您的测试方法,因为框架应该自动为您调用这些方法。手动调用它会失败。

如果我误解了您的任何要求,请告诉我。

© www.soinside.com 2019 - 2024. All rights reserved.