用 sikuli 打开 cmd 行为不可预测

Opening cmd with sikuli behaves unpredictable

我正在尝试对我的软件的 GUI 进行一些自动化测试,并验证一些我需要比较导出文件的内容,因为 我在命令行中使用 fc。

我需要程序句柄和 cmd,以便在它们之间进行 s。不幸的是,Sikuli 在调用

时表现得非常不可预测
cmd = App("cmd.exe") 

有时它会打开一个新的控制台,有时它会专注于已经从 sikuli 打开的控制台 IDE。

是否有更智能、更强大的方式来使用控制台和 sikuli?

是的,App class 有时会表现得很滑稽,并不是 100% 可靠。您可以做的是避免调用实际的 cmd windows,这本身会导致混淆。相反,您可以直接从 Sikuli 脚本 运行 您的实际 cmd 命令并将输出读取到变量。例如:

output = run("cmd /C dir")

然后 output 变量将包含 dir 命令的实际输出,就像您从命令行 运行 它一样。所以在你的情况下:

output = run("cmd /C fc path1/file1 path2/file2")