1. 程式人生 > 其它 >技術分享 | Selenium多瀏覽器處理

技術分享 | Selenium多瀏覽器處理

原文連結

實戰演示

  • Python 版本
#匯入依賴
import os
from selenium import webdriver


def test_browser():
    #使用os模組的getenv方法來獲取宣告環境變數browser
    browser = os.getenv("browser").lower()
    #判斷browser的值
    if browser == "headless":
        driver = webdriver.PhantomJS()
    elif browser == "firefox":
        driver = webdriver.Firefox()
    else:
        driver = webdriver.Chrome()
    driver.get("https://ceshiren.com/")

  • Java 版本
//匯入依賴
import org.junit.jupiter.api.BeforeAll;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.safari.SafariDriver;

public class EnvTest {
    public static WebDriver driver;
    @BeforeAll
    public static void initData() {
        //獲取宣告環境變數browser
        String browserName = System.getenv("browser");
        //判斷browser的值
        if ("chrome".equals(browserName)) {
            driver = new ChromeDriver();
        } else if ("firefox".equals(browserName)) {
            driver = new FirefoxDriver();
        } else if ("safari".equals(browserName)) {
            driver = new SafariDriver();
        }
        driver.get("https://ceshiren.com/");
    }
}


啟動的時候設定 browser 使用的瀏覽器驅動,就可以進行多瀏覽器的處理

  • Python 版本
browser=firefox pytest test_hogwarts.py

  • Java 版本
browser="chrome" mvn -Dtest=AlertTest test

在 Windows 下比較特殊,要使用 Windows 下的 set 來給變數賦值

  • Python 版本
>set browser=firefox
>pytest test_hogwarts.py

  • Java 版本
>browser="chrome" 
>mvn -Dtest=AlertTest test

需要注意的是,要先將各個瀏覽器的驅動配置好,具體的配置方式參考 Selenium 安裝章節。
推薦學習

⬇️ 點選“下方連結”,提升測試核心競爭力!+v:ceshiren001

>>更多技術文章分享和免費資料領取