【问题标题】:If I want to use autoit how can I use in maven project如果我想使用 autoit 如何在 maven 项目中使用
【发布时间】:2019-10-16 09:19:57
【问题描述】:

用java在selenium webdriver中上传文件的最佳方法是什么?

--使用发送键 --使用自动 --使用机器人类

如果我想使用 autoit,如何在 maven 项目中使用

我可以在 selenium webdriver 中上传文件而不提供硬编码路径吗?

【问题讨论】:

    标签: java selenium


    【解决方案1】:

    是的,你可以在 maven 项目中使用 autoit。

    
    String getLocation=Constant.currentDirectory+"\\testExplorer.exe "+ uploadFileName;
    Runtime.getRuntime().exec(getLocation);
    
    

    这里的uploadfilename是你要上传的文件名 您可以使用 AutoIt 编辑器创建 .exe 文件。通过使用以下代码,您可以参数化要上传的文件名

    ControlFocus("Open","","Edit1")
    ControlSetText("Open","","Edit1",$CmdLine[1])
    ControlClick("Open","","Button1")
    

    【讨论】:

      【解决方案2】:

      在你的 pom- 中使用以下两个依赖项 注意:通过使用 Jcob API,您实际上可以直接在您的 selenium 代码中编写/复制粘贴 autoit 脚本,而无需将其作为编译的可执行 exe 脚本..

      <dependency>
              <groupId>autoitx4java</groupId>
              <artifactId>autoitx4java</artifactId>
              <version>1</version>
          </dependency>
      
          <!-- https://mvnrepository.com/artifact/com.hynnet/jacob -->
          <dependency>
              <groupId>com.hynnet</groupId>
              <artifactId>jacob</artifactId>
              <version>1.18</version>
          </dependency>
      

      如何使用它的例子- 1.将Jacob dll保存在您的项目路径中,并将其路径设置如下-

         System.setProperty(LibraryLoader.JACOB_DLL_PATH, 
         System.getProperty("user.dir") + 
         "/automation/src/test/java/externalLib/jacob- 
         1.20-x64.dll");
      
      1. 在您的应用程序中单击上传/选择文件,并使用常规 selenium click- clickOnElement(findElementByXpath(chooseFileBtn)); 等待(2);

      2. 现在编写您的代码(您需要为此安装 autoIt 并捕获脚本),如下所示-

        AutoItX autoIt = new AutoItX(); 字符串标题=“打开”; Assert.assertTrue(autoIt.winWaitActive(title, "Open", 20)); autoIt.controlSend(title, "", "Edit1", filePath); autoIt.controlClick(title, "", "Button1");

      注意:AutoIt 控件 [controlSend 和 controlClick ] 现在将直接在我们的代码中工作,并完成这项工作。

      【讨论】:

        猜你喜欢
        • 2017-05-16
        • 1970-01-01
        • 2021-05-18
        • 1970-01-01
        • 1970-01-01
        • 2021-09-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多