1. 前言
本文將詳細介紹如何使用AirtestIDE驅動Firefox測試,以及脫離AirtestIDE怎麼驅動Firefox(VScode為例)。看完本文零基礎小白也能學會Firefox瀏覽器自動化測試!!!
2. 如何使用AirtestIDE驅動Firefox瀏覽器
對於Web自動化測試,目前AirtestIDE支援chrome瀏覽器和Firefox2種瀏覽器,今天我們重點聊一下,如何使用AirtestIDE驅動Firefox瀏覽器。
1)基礎知識
AirtestIDE內建python環境,環境裡面裝好了Airtest-Selenium庫,是基於Selenium封裝的。GeckoDriver是與Firefox瀏覽器配合使用的驅動程式,安裝GeckoDriver需要注意兩者的版本相容,請檢視 https://github.com/mozilla/geckodriver/releases 。詳細步驟參考下文:
2)下載GeckoDriver(注意選擇對應作業系統的版本)
3)解壓獲得geckodriver.exe
解壓剛才下載的檔案,得到geckodriver.exe 。
4)給geckodriver.exe設定為系統環境變數
把geckodriver.exe放到你電腦某個目錄下,之後給它設定系統環境變數:
5)在AirtestIDE驅動Firefox做簡單的自動化測試
# -*- encoding=utf8 -*-
from airtest.core.api import *
from airtest.cli.parser import cli_setup
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from airtest_selenium.proxy import WebFirefox
import time
#建立Chrome瀏覽器驅動例項
browser = WebFirefox(firefox_binary=r"C:\Program Files\MozillaFirefox\firefox.exe")
# 訪問網頁
browser.get('https://www.baidu.com')
#列印頁面標題
print(browser.title)
#休眠3秒
time.sleep(3)
#關閉瀏覽器
browser.quit()
① 版本說明
【AirtestIDE】1.2.15:https://airtest.netease.com/changelog.html【python】3.6.5:AirtestIDE內建【Firefox】113.0.2 (64 位)【geckodriver】0.33.0(win64):https://github.com/mozilla/geckodriver/releases/tag/v0.33.0
② 啟動報錯
在執行上述demo時,一開始遇到了一個類似這樣的報錯:
selenium.common.exceptions.WebDriverException: Message: Expected browser binary location, but unable to find binary in default location, no 'moz:firefoxOptions.binary' capability provided, and no binary flag set on the command line
查詢後發現,是找不到Firefox可執行檔案的意思,於是在建立WebFirefox
時,將firefox.exe可執行檔案路徑當做引數傳遞給WebFirefox
,之後就可以正常執行了。
3. 如何脫離AirtestIDE驅動Firefox(vscode為例)
1)前置條件:安裝VScode、配置python環境
2)python配置airtest、airtest-selenium
可參考:如何部署本地python環境使用命令如下:
pip install airtest
pip install airtest-selenium
小編的pip版本太舊了,還需更新pip,使用命令:python -m pip install --upgrade pip
3)在cmd控制檯測試環境是否配置成功
4)測試指令碼demo,解決報錯
① No module named pynput
缺少 pynput
庫,直接 pip install
安裝上即可。
② TypeError: init() got an unexpected keyword argument......
Ctrl+滑鼠左鍵到proxy.py
檔案;出現 argument 'timeout'
報錯的話刪掉timeout=timeout
的引數;出現argument 'firefox_options'
報錯的話刪掉firefox_options=firefox_options
的引數。
5)脫離AirtestIDE驅動Firefox
4. 小結
今天關於驅動Firefox的教程就到這裡啦
最後感謝每一個認真閱讀我文章的人,禮尚往來總是要有的,這些資料,對於【軟體測試】的朋友來說應該是最全面最完整的備戰倉庫,雖然不是什麼很值錢的東西,如果你用得到的話可以直接拿走:
如果你想學習軟體測試和需要軟體測試資料,歡迎加入扣扣交流群:731789136,裡面可以免費領取軟體測試+自動化測試資料+軟體測試面試寶典+簡歷模版+實戰專案+面試刷題工具和大佬答疑解惑,我們一起交流一起學習!