【问题标题】:AutoIt is not working with chromeAutoIt 不适用于 chrome
【发布时间】:2015-02-20 10:33:16
【问题描述】:

我想使用 Selenium WebDriver 在 google 中搜索图像。 我编写了一个 AutoIt 脚本来从驱动器中选择图像。 AutoIt 脚本不适用于 chrome,但它在 Firefox 中运行良好。

这是我的脚本 -

WinWait("[CLASS:#32770]","",5)
ControlFocus("File Upload","","Edit1")
Sleep(2000)
ControlSetText("File Upload", "", "Edit1", "image.jpg")
Sleep(2000)
ControlClick("File Upload", "","Button1");

我的 Java 代码也没有出现任何异常。 我还下载了适用于 chrome 的 AutoIt 扩展程序,但它不起作用。 有谁知道原因吗?

【问题讨论】:

    标签: google-chrome selenium-webdriver autoit


    【解决方案1】:

    您是否尝试将控件名称更改为 Chrome 提供的名称。我相信 Chrome 将文件上传字段识别为“打开”,IE 将其视为“选择要上传的文件”。

    【讨论】:

      【解决方案2】:

      我遇到了同样的问题。我在执行 AutoIT 命令之前等待了 2 秒,现在它可以工作了。

      我假设您已经编译了 AutoIT 脚本并将 .exe 文件命名为 Upload。下面是我写的java代码-

      Thread.wait(2000);
       String command ="C:\\Users\\Casper\\Desktop\\Resume\\Upload.exe";
        Runtime.getRuntime().exec(command);
      

      现在的问题是为什么我在开始上传之前等待 2 秒,答案是只要您在浏览器中单击上传按钮,操作系统控制框需要一些时间才能打开,但在我们的代码中,我们不断传递命令,因此文件上传失败,没有任何异常。我只是给 java 2 秒时间,以便操作系统控制窗口可以打开,然后我正在执行我的代码。

      【讨论】:

        【解决方案3】:
        ControlFocus("Open","","Edit1")
        ControlSetText("Open","","Edit1","C:\Import\assesse-import.csv")
        ControlClick("Open","","Button1")
        

        用“打开”更新“文件上传”并再次编译 AutoIT 脚本,它应该可以正常工作。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-03-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2022-12-28
          • 2023-01-14
          • 2017-10-30
          • 2015-07-06
          相关资源
          最近更新 更多