我想在ruby代码中运行我的autoIt .exe
文件。我的文件出现在桌面上。
请帮助指导我如何在Selenium Ruby Webdriver脚本中运行AutoIT工具生成的.exe文件?
我的方案是我需要通过单击Flash按钮上传文件,然后在“打开”窗口弹出窗口中选择一个文件。但是,Selenium无法与窗口弹出窗口进行交互,因此我使用AutoIT工具填充文件路径并生成到.exe文件。我想要做的是现在我希望Selenium在显示“打开”窗口弹出窗口后运行由AutoIT工具生成的exe文件。 下面是我的代码:
$driver=Selenium::WebDriver.for :ff
$driver.get "http://url/uploadform/contactform.php"
$driver.manage.window.maximize
$driver.find_element(:xpath,".//input[@id='photo']").send_keys("C:/Users/xyz/Desktop/logo_icon.png")
$driver.find_element(:xpath,".//input[@id='photo']").click
# au3=WIN32OLE.new("C:\\Users\\Aditya\\Desktop\\test.exe")
file = File.open("C:/Users/Aditya/Desktop/test.exe", "r")
contents = file.read
这里test.exe是我的autoIt文件。
答案 0 :(得分:1)
您可能希望查看以下命令之一:
%x{}
语法他们的回报以及推出方式各不相同。
command = "C:\\Users\\Aditya\\Desktop\\test.exe"
system(command)
%x`#{command}`
spawn(command)
答案 1 :(得分:0)
我在AutoIt中使用了Process,但是如果有人想打开批处理文件,他可以在上面的评论中使用@Uzbekjon提到的答案。
我的问题的一个答案是: Process.exec("自动文件的路径")