• selenium和浏览器驱动的基本使用


    ## selenium
    浏览器自动化工具 (使用代码控制浏览器,执行浏览器操作)
    + 测试工具(unittest / pytest)

    ## 安装 selenium
    1,浏览器(谷歌,火狐)
    2,webdriver 驱动,下载地址:https://npm.taobao.org/mirrors/chromedriver/
    - 驱动的版本需要和浏览器兼容。一般来说,浏览器91, 就下载 91 驱动。
    3,语言绑定包 pip install selenium==3.14
    ## selenium 的快速使用
    - 浏览器前进后退刷新,
    - 元素定位
    - 点击,输入

    示例代码:
    from selenium import webdriver
    
    # 得到一个浏览器 Chrome
    # executable_path 表示浏览器驱动的文件路径
    # 如果不想传浏览器驱动的路径,事先把 chromedriver.exe 放到系统环境变量路径中
    browser = webdriver.Chrome(executable_path='chromedriver.exe')
    
    # 访问一个 url 地址
    browser.get('http://testingpai.com/')
    
    # 获取现在的网页标题
    print(browser.title)
    # 获取现在的 url 是不是已经改变
    print(browser.current_url)
    # 获取源代码
    print(browser.page_source)
    
    # 访问另一个 url 地址
    browser.get('http://baidu.com')
    
    # 退回
    browser.back()
    
    # 前进
    browser.forward()
    
    # 刷新
    browser.refresh()
    
    # 最小化
    browser.minimize_window()
    
    # 最大化窗口
    browser.maximize_window()
    
    # 关闭一个网页的标签
    browser.close()
    
    # 关闭整个浏览器
    browser.quit()
    如果不想传浏览器驱动的路径,事先把 chromedriver.exe 放到系统环境变量路径中,这里python.exe已经在系统路径内,
    可以把chromedriver.exe直接放到与python.exe同级目录即可

    每次打开浏览器记得关闭浏览器,不然进程会越来越多,也可以使用with,避免忘记

    from selenium import webdriver
    
    # with open() as f:
    with webdriver.Chrome() as browser:
        browser.get("http://testingpai.com")
        print(browser.page_source)
    ## web 测试步骤
    1、打开网页
    2、点点点, 输入框输入
    3、断言
    4、生成测试报告
    5、结合 pytest

    测试用例编写:

    import time
    from selenium import webdriver
    from selenium.webdriver import ChromeOptions
    from selenium.webdriver.chrome.service import Service
    
    
    class TestDemo:
        def test_01(self):
            service = Service(executable_path='chromedriver.exe')
            with webdriver.Chrome(service=service) as browser:
                # browser.service.
                browser.get("http://www.baidu.com")
                # 先找到输入框, 元素定位
                el = browser.find_element('id', 'kw')
                # 输入框操作
                el.send_keys('困困')
                # 找到搜索按钮
                search_btn = browser.find_element('id', 'su')
                # 点击搜索按钮
                search_btn.click()
                # 让程序休息3
                time.sleep(3)
  • 相关阅读:
    mysql2redis
    butterknife简化android开发
    加速 Gradle 构建大型 Android 项目的方法[转]
    大型项目 Gradle 的常用库和版本管理[转]
    JVM调优
    CSDN上最火的android项目
    jOOQ
    Guava库
    Android 镜像地址[持续更新中]
    The server quit without updating PID file (mysql.pid)一次意外mysql停止运行备忘录
  • 原文地址:https://www.cnblogs.com/wsfsd/p/15584970.html
Copyright © 2020-2023  润新知