robotframework使用筆記 持續更新

2022-04-30 16:45:10 字數 1472 閱讀 6702

1.在rf中else 和else if必須要大寫,小寫識別不了

2.在用autoitlibrary的過程中,必須需要等視窗先出現,才能進行後續的操作,否則將無法執行選擇檔案的操作,等待視窗出現的情況,可用如下方法:

等待視窗出現的時間,也可以用sleep,如下:

以上三種方法均可執行成功,需要注意的是,用sleep時,必須要等待的時間足夠長才可,推薦用前面兩種方法。

ps:這些方法並不是必須的,有時候即使不用這些方法,也可以成功執行上傳檔案的操作,但最好使用其中一種方法,以防出現,在檢測到視窗之前就去執行上傳語音檔案的操作。

3.當ride視窗沒有日誌輸出時,執行taskkill /f /im chromedriver.exe

4.如果定位xpath時,遇到了瓶頸,不妨搜尋一下 xpath軸的用法,會發現新世界的大門

5.執行以前跑通的用例,發現無法正常執行,提示找不到disconnected: unable to connect to renderer,這是因為電腦的谷歌瀏覽器版本和瀏覽器驅動版本對不上導致的,解決這個問題,只需要確定谷歌瀏覽器的版本(報錯的時候有提示當前版本和需要的驅動版本),然後更新對應的瀏覽器驅動即可

瀏覽器和驅動版本對應圖:

6.乙個新坑!!!

必須要上一次上傳的路徑和指令碼裡面的路徑保持一致!才能上傳成功,如果上一次上傳的路徑和指令碼的路徑不一樣,使用control send 會導致路徑填寫的不正確,

如下圖(以下只是其中一種情況,還有可能是別的,總之就是不能正確找到!):

經查詢得知,是因為controlsend是在游標所在位置後新增(若控制項當前未獲取焦點則預設是在當前文字後附加),所以如果點選瀏覽按鈕彈出的路徑選擇框,已經有上次上傳的目錄了,則會直接在當前目錄的路徑後新增目錄,而且還受輸入法的影響(send就跟手動輸入類似,跟輸入法有關聯,如果你開著中文輸入法,\ 就會變為 、)

將controlsend改成controlsettext可以完美解決這個問題!!!如下:

controlsettext與controlsend的區別在於:controlsettext 會清除原有內容,而controlsend是在游標所在位置後新增

使用autoitlibrary庫上傳檔案時,使用上述方法,經常會導致上傳的路徑和傳入的不符(不完整,只取到一部分),原因未知,猜測可能是視窗還沒啟用就開始寫目錄,但沒啟用寫不進去,等啟用了目錄沒寫完,於是擷取剩下未寫完的一部分。。。使用下述方法基本上不會出現:

RobotFramework測試Rest服務

python有乙個都對http請求封裝的很好的類庫 requests 見這裡 而rest服務就是基於http請求之上的,活躍的社群也有提供了乙個封裝 robotframework requests 見這裡 可以用來方便的測試rest服務 這裡記錄下在使用過程中碰到的問題 1.import的時候,名字...

RobotFramework 資料分離

robotframework 資料分離分為三種 1.run 新增引數 2.外部的python檔案 3.讀取excel run 新增引數 適用於jenkins 使用 v 引數名 引數值 使用外部的python檔案 使用外部的python檔案進行資料分離的話,首先建乙個python檔案,並在裡面定義乙個...

robot framework環境搭建

一 robot framework環境搭建 官網 序號安裝包名 安裝方法備註1 python exe檔案,直接雙擊安裝 一切的基礎,安裝路徑不能有空格 2setuptools python 的套件管理程式 3pip 1 cmd進入ez setup.py檔案目錄 2 用setuptools安裝 eas...