• 技术分享 | Selenium多浏览器处理


    实战演示

    • Python 版本
    1. #导入依赖
    2. import os
    3. from selenium import webdriver
    4. def test_browser():
    5. #使用os模块的getenv方法来获取声明环境变量browser
    6. browser = os.getenv("browser").lower()
    7. #判断browser的值
    8. if browser == "headless":
    9. driver = webdriver.PhantomJS()
    10. elif browser == "firefox":
    11. driver = webdriver.Firefox()
    12. else:
    13. driver = webdriver.Chrome()
    14. driver.get("https://ceshiren.com/")
    • Java 版本
    1. //导入依赖
    2. import org.junit.jupiter.api.BeforeAll;
    3. import org.openqa.selenium.WebDriver;
    4. import org.openqa.selenium.chrome.ChromeDriver;
    5. import org.openqa.selenium.firefox.FirefoxDriver;
    6. import org.openqa.selenium.safari.SafariDriver;
    7. public class EnvTest {
    8. public static WebDriver driver;
    9. @BeforeAll
    10. public static void initData() {
    11. //获取声明环境变量browser
    12. String browserName = System.getenv("browser");
    13. //判断browser的值
    14. if ("chrome".equals(browserName)) {
    15. driver = new ChromeDriver();
    16. } else if ("firefox".equals(browserName)) {
    17. driver = new FirefoxDriver();
    18. } else if ("safari".equals(browserName)) {
    19. driver = new SafariDriver();
    20. }
    21. driver.get("https://ceshiren.com/");
    22. }
    23. }

    启动的时候设置 browser 使用的浏览器驱动,就可以进行多浏览器的处理

    • Python 版本
    1. browser=firefox pytest test_hogwarts.py
    • Java 版本
    1. browser="chrome" mvn -Dtest=AlertTest test

    在 Windows 下比较特殊,要使用 Windows 下的 set 来给变量赋值

    • Python 版本
    1. >set browser=firefox
    2. >pytest test_hogwarts.py
    • Java 版本
    1. >browser="chrome"
    2. >mvn -Dtest=AlertTest test

    需要注意的是,要先将各个浏览器的驱动配置好,具体的配置方式参考 Selenium 安装章节。

    最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

    这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

  • 相关阅读:
    【神经网络】(21) Vision Transformer 代码复现,网络解析,附TensorFlow完整代码
    2024年5月系统架构设计师综合知识真题
    nginx详细安装教程
    Linux的shell脚本爬虫实战之图片爬取
    发布 AI 后,苹果股价创历史新高
    【Python基础】3. 关键字与运算符
    基于PHP+mysql的自动化办公OA系统 python+django
    Xilinx UltraScale架构之可配置逻辑块CLB
    解决kafka消费积压问题
    Linux三剑客之grep、sed、awk
  • 原文地址:https://blog.csdn.net/YLF123456789000/article/details/134246602