![](/img/trans.png)
[英]How can I use a Maven project as a dependency to another Maven project?
[英]If I want to use autoit how can I use in maven project
使用 java 在 selenium webdriver 中上傳文件的最佳方法是什么?
--使用發送密鑰--使用 autoit --使用機器人 class
如果我想使用 autoit 如何在 maven 項目中使用
我可以在不提供硬編碼路徑的情況下在 selenium webdriver 中上傳文件嗎?
是的,您可以在 maven 項目中使用 autoit。
String getLocation=Constant.currentDirectory+"\\testExplorer.exe "+ uploadFileName;
Runtime.getRuntime().exec(getLocation);
這里uploadfilename是您要上傳的文件名您可以使用AutoIt Editor創建.exe文件。通過使用以下代碼您可以參數化您要上傳的文件名
ControlFocus("Open","","Edit1")
ControlSetText("Open","","Edit1",$CmdLine[1])
ControlClick("Open","","Button1")
在您的 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");
使用常規 selenium 單擊您的應用程序中的上傳/選擇文件 click-clickOnElement(findElementByXpath(chooseFileBtn)); 等待(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 ] 現在將直接在我們的代碼中工作,並完成這項工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.