我一直在用C和python使用HWUT单元测试工具,现在我正在用Java尝试它。在python中,如果我将"hwut-info.dat"文件指定为,我可以告诉HWUT使用python运行所有.py文件
Some title
----------------------
python *.py
但是对于Java,我不能这样做,因为Java需要没有扩展名的文件名。java编译器应该考虑'*.java
'文件,但它确实期望文件干作为输入,即 java FileStem
为了治疗FileStem.java
。
更高版本的 HWUT 版本(> 0.28.0(将提供一些复杂的功能传递有关路径名的信息,即在那些(在撰写本文时("未来版本"无扩展名Java文件的用法可以指定为
: java -cp mypackages:. {{file.java%}}
目前,您需要一个脚本来运行测试,例如"runjava.sh":
#! /usr/bin/env bash
java -cp ../../package:. $(basename ${1%.*}) ${@:2}
它调用java解释器,从文件名中删除扩展名并传递要执行的文件的所有剩余参数。在您的"hwut-info.dat中您需要指定的文件:
My title
--------------------------------------------------------
bash ./runjava.sh *.class
这允许 HWUT 在当前目录中搜索 *.class 文件。这但是,"runjava.sh"省略了扩展名,并使用文件词干调用"java"。在 Java 测试应用程序中,您会反映命令行,如下所示:
public class Mine {
public static void main(String[] args) {
if( args.length >= 1 && args[0].equals("--hwut-info") ) {
System.out.println("Title ...");
...
}
}
...
}