1. 程式人生 > >selenium自動化測試,上傳功能 之 使用 autoit工具,java語言

selenium自動化測試,上傳功能 之 使用 autoit工具,java語言

selenium對網頁進行UI自動化時經常會遇到OS彈框,比如上傳、下載框,對這種彈框,selenium無法處理,常常我們會選擇autoit這個工具。

通過autoit的獲取物件並編輯指令碼:

ControlFocus("檔案上傳", "", "Edit1")
WinWait("[CLASS:#32770]", "", 10)
ControlSetText("檔案上傳" ,"", "Edit1", $CmdLine[1])
Sleep(2000)
ControlClick("檔案上傳", "","Button1");

通過Aut2Exe工具將指令碼轉成exe檔案(upfile.exe)

我們先通過命令列試試,開啟網頁上傳彈框,然後在cmd中執行該指令碼:

接下來就是用Java用os模組來呼叫該檔案了:

public class Upfile_Action {    
    public static void execute(WebDriver driver) throws Exception{
         LoginPage lzyupfile=new LoginPage(driver);  
         lzyupfile.upfile().click();
         lzyupfile.upfile1().click();
         lzyupfile.upfile2().click();
         lzyupfile.upfile3().click();
         try {
             Runtime.getRuntime().exec("D:\\cadwenjian\\upfile3-2.exe");      //呼叫autoit
               }catch(Exception e){}    
 }

執行,成功!