Python 使用sikuli打开cmd的行为不可预测
我正在尝试对我的软件的GUI进行一些自动化测试,并验证我需要比较导出文件的一些内容,因为我在命令行中使用了fc 我需要我的程序和cmd的句柄,以便在它们之间切换。不幸的是,Sikuli在打电话时表现得非常不可预测Python 使用sikuli打开cmd的行为不可预测,python,cmd,automation,sikuli,sikuli-script,Python,Cmd,Automation,Sikuli,Sikuli Script,我正在尝试对我的软件的GUI进行一些自动化测试,并验证我需要比较导出文件的一些内容,因为我在命令行中使用了fc 我需要我的程序和cmd的句柄,以便在它们之间切换。不幸的是,Sikuli在打电话时表现得非常不可预测 cmd = App("cmd.exe") 有时它会打开一个新的控制台,有时它会关注已经从sikuli IDE打开的控制台 是否有一种更智能、更健壮的方式来使用console和sikuli?是的,App类有时会表现得很滑稽,而且不是100%可靠。您可以做的是避免调用实际的cmd窗口,
cmd = App("cmd.exe")
有时它会打开一个新的控制台,有时它会关注已经从sikuli IDE打开的控制台
是否有一种更智能、更健壮的方式来使用console和sikuli?是的,
App
类有时会表现得很滑稽,而且不是100%可靠。您可以做的是避免调用实际的cmd窗口,这本身会导致混淆。相反,您可以直接从Sikuli脚本运行实际的cmd命令,并将输出读取到变量。例如:
output = run("cmd /C dir")
然后,output
变量将包含dir
命令的实际输出,就像从命令行运行它一样。因此,在你的情况下:
output = run("cmd /C fc path1/file1 path2/file2")
是的,
App
类有时会表现得很滑稽,而且不是100%可靠。您可以做的是避免调用实际的cmd窗口,这本身会导致混淆。相反,您可以直接从Sikuli脚本运行实际的cmd命令,并将输出读取到变量。例如:
output = run("cmd /C dir")
然后,output
变量将包含dir
命令的实际输出,就像从命令行运行它一样。因此,在你的情况下:
output = run("cmd /C fc path1/file1 path2/file2")