1. 程式人生 > >robot framework 遇到頁面彈出框上傳檔案時處理

robot framework 遇到頁面彈出框上傳檔案時處理

最近在做公司公司頁面自動化的時候遇到上傳檔案的彈出框,如下圖,在點選選擇檔案的時候回彈出一個檔案選擇視窗,記錄下處理方法

下載安裝AutoIt 軟體,安裝python 安裝AutoItLibrary,這個過程網上一大堆,不做敘述

將AutoItLibrary匯入到robotframework裡面,之前匯入後字型是紅色的也就是匯入失敗,今天再次匯入的時候是黑色字型也就是匯入成功,不知道為什麼

安裝好AutoIt之後,開啟AutoIt Window Info,長安FinderTool拖動到選擇框的檔名出,在Summary出顯示出相關資訊

開啟SciTe ScriptEditor  指令碼編輯器,編寫指令碼:(基本上使用谷歌瀏覽器彈出的上傳檔案提示框的元素都是相同的,所以程式碼只需要上傳的檔名就可以)

$path = "D:\Download\模板.pdf"
WinActivate("開啟");
ControlFocus("開啟","","Edit1")
WinWait("[CLASS:#32770]","",10)
ControlSetText("開啟","","Edit1",$path)
sleep(2000)
ControlClick("開啟","","Button1")

我上傳的檔案是D:\Download目錄下的 模板.pdf這個檔案

回到上傳頁面,將上傳檔案的視窗開啟,然後將指令碼執行,選擇Tools--Go,由於我選擇上傳的檔案就在彈框開啟的介面內,所以我在驗證指令碼的時候是成功的,其它地方沒有驗證

在驗證指令碼之後,開啟Compile to .exe(X86),將指令碼轉化成EXE檔案,將轉換後的exe檔案放到roborframework專案所在的檔案下(放在其它目錄下然後輸入檔名不執行,不知道為什麼)

如上19行,檔案上傳成功