【发布时间】:2016-01-13 07:23:45
【问题描述】:
假设我在一个父目录下的 50 个不同目录中有同一项目的 50 个不同版本。我已经编写了 JUnit 测试来测试每个目录中的项目,并且效果很好。但问题是我必须运行 50 次才能得到测试结果。
有什么方法可以自动化它以在父目录下的所有子目录上运行测试?
我现在正在使用 Eclipse。但愿意切换到 Netbeans 或任何其他工具,但更喜欢 Windows 操作系统。
注意:我将使用它来为 Java 编程作业评分。这意味着我在一个父目录下的 50 个不同目录中有 50 个提交。我已经编写了测试用例来对每个提交进行评分。现在我必须导入每个项目并手动运行测试用例。现在我想自动化它以减少时间。
【问题讨论】:
-
我没有为同一个项目使用不同的包。我在不同的目录中有同一个项目的不同版本。
-
听起来您必须在自己的类路径中运行每批测试,其中包括您正在当前测试的版本。但是我不知道目前有任何 IDE 支持这种功能。也许您可以创建自己的类,它遍历版本目录,为每次运行定义类路径,并调用 JUnit...
-
如何将所有 50 个解决方案提交为同一项目的 50 个分支,例如git 并在 eclipse 切换分支之外运行完全相同的构建+测试作业?因此,您的测试源代码树保持静态,主源代码树从一个分支更改为另一个分支。这将是几行脚本。
-
我认为没有任何现成的解决方案,但是 bash(Windows 上的 gitbash shell)或 python 中的脚本应该非常简单。不假装是任何脚本语言,但算法看起来像:
for project in namesgit checkout $projectmvn clean build > ../$project-results。如果你想在 bash 中编写它,我什至可以为你编写脚本,你只需要 git 和 gitbash for windows
标签: java eclipse testing junit