zoukankan      html  css  js  c++  java
  • selenium---在已打开的浏览器上操作

    前言

      在编写自动化测试用的过程中,经常会进行调式代码,正常情况下,当我们在写完用例,执行代码就会给我们重新打开一个浏览器,然后在进行一系列的操作。如果我们的需要调式的地方比较容易做到,这个方法就很容易,那如果我们需要调试的位置需要做很多前置操作,那么就浪费我们的时间。这个时候我们就可以通过打开浏览器调试功能,然后让浏览器直接在当前的页面进行debug。

    单浏览器调试

    1.将chrome浏览器安装地址配置到环境变量Path中。如果不知道chrome的地址安装在哪里,在浏览器中输入 chrome://version/ 进行查看

    2.打开cmd输入以下内容

    输入命令:chrome --remote-debugging-port=8210 --user-data-dir="F:chrome_config"
    # chrome:表示启动chrome浏览器
    # remote-debugging-port:表示执行浏览器端口
    # 8210为个人设置的端口
    # --user-data-dir="F:chrome_config":表示新建一个浏览器配置信息。

    3.在打开的浏览器中进行debug调试。

    跳过禅道登录进行调试

    安静这里给大家举个小栗子,我们通过上述步骤打开禅道,然后登录

    登录成功后,这里直接点击测试,进入到测试页面并每次都打印浏览器的标题来确定是否完成跳转。

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    options = Options()
    # 启动的浏览器地址
    options.debugger_address ='127.0.0.1:8210'
    # 将浏览器配置信息进行添加
    driver = webdriver.Chrome( chrome_options=options)
    print('目前浏览器标题:'+driver.title)
    # 点击测试
    driver.find_element_by_xpath('//*[@href="/zentao/qa/"]').click()
    print('现在的浏览器标题:'+driver.title)

    通过打印的内容可以看到,已经可以完成在已打开的浏览器中进行调试。

  • 相关阅读:
    About IL, ILGenerator
    何谓系统架构师(转)
    C# weakreference
    新蛋,您能告诉我,这是怎么了吗?
    C#线程同步的常用关键字简介
    [转]百万级访问网站前期的技术准备
    Gridview控件的使用要点
    Asp.net三种页面传值方法
    浅谈 Vue css scoped & module
    Mac iTerm2 zsh: command not found: node/npm/nvm...
  • 原文地址:https://www.cnblogs.com/qican/p/14331141.html
Copyright © 2011-2022 走看看