我正在为一种接受命令、运行它并以字符串形式返回标准输出的方法编写“端到端”测试。它看起来像这样:
public static String runCommand(String ... command) { }
我需要的是一个跨平台命令,它可以向控制台写入一些内容,因为我们混合使用了 windows/linux 机器,而且我需要测试在任何地方运行。我不希望有 if (os == 'windows')
类型的语句。
我不想在这里使用System.out.println(command)
,我想执行代码并获得输出。
例如,sleep 5
将在 Unix/Linux 和 Windows 上 hibernate 5 秒,但不会输出任何内容。 echo hello
在 Windows 上不起作用,因为 echo
是来自 Unix 终端的命令。
有什么想法吗?
我不是在寻找关于这段代码“可测试性”的评论。
最佳答案
hostname
, ping
, route
, whoami
, help
, .. . ?
关于java - 是否有跨平台命令可以打印一些内容到控制台?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26997161/