在自动化测试中怎么解决重开浏览器的烦恼

2022-05-01  本文已影响0人  吱吱菌啦啦
以mac为例,windows配置环境变量略微有区别~

1.找到Chrome的启动路径,配置环境变量,重启terminal
export PATH=$PATH:/Applications/Google\ Chrome.app/Contents/MacOS/

2.退出所有的浏览器(这一步很重要,执行第三步时一定要退出所有浏览器,否则3无法启起来)

3.命令行启动远程浏览器Google\Chrome --remote-debuging-port=9222端口不一定是9222,可以调整,只要不被占用就行,当localhost:9222是启动状态时,用例运行时就可以复用浏览器

4.运行测试代码,进行简单配置,就会在已有浏览器窗口中执行用例

from time import sleep
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

def test_chrome():
    """
    在已有浏览器中运行用例,先启动本地浏览器服务 Google\ Chrome --remote-debugging-port=9222
    本地浏览器配置的端口需要和启动的浏览器端口保持一致
    :return:
    """
    option = Options()
    option.debugger_address = "localhost:9222"
    driver = webdriver.Chrome(options=option)
    driver.get('https://www.baidu.com')
    sleep(5)

以上配置完成之后,如果测试页面是登录状态,再执行该页面的case就能带上cookie了。

5.如果运行用例还是想用webdriver开一个新的不带缓存的浏览器,去掉配置就行

from time import sleep
from selenium import webdriver

def test_chrome():
    """
    在已有浏览器中运行用例,先启动本地浏览器服务 Google\ Chrome --remote-debugging-port=9222
    本地浏览器配置的端口需要和启动的浏览器端口保持一致
    :return:
    """
    driver = webdriver.Chrome()
    driver.get('https://www.baidu.com')
    sleep(5)
上一篇 下一篇

猜你喜欢

热点阅读