【自動化測試入門】用Airtest - Selenium對Firefox進行自動化測試(0基礎也能學會)

程序员潇潇發表於2024-03-13

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需要注意兩者的版本相容,請檢視 。詳細步驟參考下文:

2)下載GeckoDriver(注意選擇對應作業系統的版本)

【自動化測試入門】用Airtest - Selenium對Firefox進行自動化測試(0基礎也能學會)

3)解壓獲得geckodriver.exe

解壓剛才下載的檔案,得到geckodriver.exe 。

4)給geckodriver.exe設定為系統環境變數

把geckodriver.exe放到你電腦某個目錄下,之後給它設定系統環境變數:

【自動化測試入門】用Airtest - Selenium對Firefox進行自動化測試(0基礎也能學會)【自動化測試入門】用Airtest - Selenium對Firefox進行自動化測試(0基礎也能學會)

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:【python】3.6.5:AirtestIDE內建【Firefox】113.0.2 (64 位)【geckodriver】0.33.0(win64):

② 啟動報錯

在執行上述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

【自動化測試入門】用Airtest - Selenium對Firefox進行自動化測試(0基礎也能學會)

3)在cmd控制檯測試環境是否配置成功

【自動化測試入門】用Airtest - Selenium對Firefox進行自動化測試(0基礎也能學會)

4)測試指令碼demo,解決報錯

【自動化測試入門】用Airtest - Selenium對Firefox進行自動化測試(0基礎也能學會)

① 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

【自動化測試入門】用Airtest - Selenium對Firefox進行自動化測試(0基礎也能學會)

4. 小結

今天關於驅動Firefox的教程就到這裡啦

最後感謝每一個認真閱讀我文章的人,禮尚往來總是要有的,這些資料,對於【軟體測試】的朋友來說應該是最全面最完整的備戰倉庫,雖然不是什麼很值錢的東西,如果你用得到的話可以直接拿走:

如果你想學習軟體測試和需要軟體測試資料,歡迎加入扣扣交流群:731789136,裡面可以免費領取軟體測試+自動化測試資料+軟體測試面試寶典+簡歷模版+實戰專案+面試刷題工具和大佬答疑解惑,我們一起交流一起學習!

相關文章