首页 > 其他分享 >Selenium多浏览器处理

Selenium多浏览器处理

时间:2023-01-10 18:01:38浏览次数:45  
标签:浏览器 firefox selenium 处理 Selenium driver test import browser

实战演示

  • 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

标签:浏览器,firefox,selenium,处理,Selenium,driver,test,import,browser
From: https://blog.51cto.com/u_15640304/6000510

相关文章

  • C/C++ 异常处理机制(例:文件拷贝)
    异常是一种程序控制机制,与函数机制互补。函数是一种以栈结构展开的上下函数衔接的程序控制系统,异常是另一种控制结构,它可以在出现“意外”时中断当前函数,并以某种机制......
  • 事件处理_1事件的基本使用
    事件处理_1事件的基本使用<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>事件的基本使用</title><scriptsrc="../js/vue.js"></......
  • 事件处理_3键盘事件
    事件处理_3键盘事件<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title></title><scriptsrc="../js/vue.js"></script></head><bod......
  • 事件处理_2事件修饰符
    事件处理_2事件修饰符<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>事件修饰符</title><scriptsrc="../js/vue.js"></script>......
  • 接口自动化测试如何处理 Header cookie
    Cookie(复数形态:Cookies)是某些网站为了辨别用户身份而储存在用户本地终端上的数据。在接口测试过程中,如果网站采取了Cookie认证的方式,那么发送的请求需要附带Cookie,才会得......
  • 拳打夸克,脚踢UC!这才是最好用的手机浏览器
    手机浏览器软件体积小巧、界面干净整洁、功能丰富,没有广告绝对是选择浏览器是需要注意的。其实,这类浏览器之前我们也分享了很多,比如Alook浏览器、X浏览器等。好用的软件不......
  • Selenium 测试用例编写
    ​​原文链接​​编写Selenium测试用例就是模拟用户在浏览器上的一系列操作,通过脚本来完成自动化测试。编写测试用例的优势:开源,免费。支持多种浏览器IE,Firefox,Chrome,Safar......
  • web自动化测试-文件上传与弹框处理
    实战演示文件上传input标签使用自动化上传,先定位到上传按钮,然后send_keys把路径作为值给传进去.如图所示,是企业微信文件上传的页面定位到标签为input,type为file的元......
  • CPI为1的单周期处理器强吗?
    CPI为1的单周期处理器强吗?16年408真题20.单周期处理器中所有指令的指令周期为一个时钟周期。下列关于单周期处理器的叙述中,错误的是(A)。A.可以采用单总线结构数据通路......
  • matlab的gui图像处理操作界面,实现坐标轴重置界面
    1.首先建立gui界面,具体过程在这里不做赘述。   2.然后将坐标轴所要显示的曲线放到对应的位置。按下开始按键,即可在相应位置显示曲线   functionpush_beg......