5

我必须测试一个接受一个输入文件的程序。我已将所有输入文件放在一个文件夹中,现在我想使用 SBT 和 ScalaTest 具有以下功能:

  • TestAll :为所有文件一次调用一个输入文件的程序
  • test测试一:使用从 sbt 控制台提供的一个输入文件作为命令的参数来调用程序

暂时foldername是固定路径,所以可以通过以下方式获取所有文件的列表:

val dir = new File("tests\\");
val files = dir.listFiles.filter(
  f => """.*\.extension$""".r.findFirstIn(f.getName).isDefined);

谁能给我一个简短的想法,说明哪个 scalatest 类最适合这个目的?

4

1 回答 1

2

我认为您应该考虑重构程序,以便您拥有一个采用InputStream而不是文件的方法。这样您就可以测试该方法而不必担心文件。当然,这取决于文件的结构和大小。

如果您不想这样做,您可以使用参数(文件名)实现您自己的 SBT 任务。

http://code.google.com/p/simple-build-tool/wiki/CustomActions

http://code.google.com/p/simple-build-tool/wiki/MethodTasks

于 2010-08-13T08:08:24.227 回答