技术分享 | 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