• Selenium + Python自动化测试入门


    Selenium介绍

      Selenium 是支持web浏览器自动化的一系列工具和库的综合项目,Selenium 的核心是 WebDriver,这是一个编写指令集的接口,可以在许多浏览器中互换运行。

    环境搭建

    Python安装

    1. mac系统自带的Python版本是2.7(版本低),直接通过命令brew install python3安装即可
      在这里插入图片描述
    2. 通过which python3查看安装位置
      在这里插入图片描述
    3. 在终端运行python3,看到下面的画面,就说明Python安装成功!
      在这里插入图片描述

    安装Pycharm

    1. Pycharm官网下载编辑器
    2. 创建文件夹(例如selecode)
    3. Pycharm打开selecode文件夹,进行如下设置
      在这里插入图片描述

    selenium安装

    1. pip安装

      1.1 下载pip

      curl https://bootstrap.pypa.io/pip/get-pip.py -o get-pip.py
      
      • 1

      1.2 安装
      在这里插入图片描述

    2. 通过pip安装selenium

      pip install selenium
      
      • 1
    3. 查看selenium

      pip show selenium
      
      • 1

      在这里插入图片描述

    WebDriver安装

    1. 查看浏览器版本,WebDriver版本需要和浏览器版本保持一致 在这里插入图片描述
    2. 下载和浏览器对应版本的WebDriver
      在这里插入图片描述
    3. 添加环境变量
      vim ~/.profile
      export PATH="$PATH:/usr/local/chromedriver"
      source ~/.profile
      
      • 1
      • 2
      • 3
      3.1 mac还需要添加信任,在webdriver目录下,执行
      在这里插入图片描述
      chromedriver % xattr -d com.apple.quarantine chromedriver	
      
      • 1
      3.2 在控制台测试下是否生效
      在这里插入图片描述

    selemium的基本使用

    1. 创建python文件
      在这里插入图片描述
    2. 邮件运行下方demo代码,查看效果
      在这里插入图片描述

    元素定位

    1. ID定位
      在这里插入图片描述
    2. xpath定位(直接Copy full Xpath)
      在这里插入图片描述
      在这里插入图片描述

    多窗口

    1. 在selenium中,通过一个随机生成的字符串(uuid)来唯一标识某个窗口
    2. 执行js:window.open打开新窗口
      new = 'window.open("https://service.homepartners.tech/sso/Account/Login?ReturnUrl=%2Fsso%2Fconnect%2Fauthorize' \
        '%2Fcallback%3Fclient_id%3Dhpa-ctm-vendor-portal%26redirect_uri%3Dhttps%253A%252F%252Fvendor.homepartners.tech' \
        '%252Fcallback%26response_type%3Dtoken%2520id_token%26scope%3Dopenid%2520profile%2520vendor-api%2520foundation' \
        '-api%26state%3D5a6d7d6d84264b828f02081ac9fb1c3a%26nonce%3D7cb02e1da5214cd0828d4373b29e5b66"); '
        
      driver.execute_script(new)
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
    3. handler的获取
      3.1 获取所有:driver.window_handlers
      3.2 获取单个:driver.current_window_handle
      3.3 切换:driver.switch_to_window(handle)
      在这里插入图片描述

    束语

      通过上述操作就可以做一些简单的demo,但如何出报表?如何工程化?以及后续怎么部署迭代?还需要进一步去学习

  • 相关阅读:
    halcon 图像拼接
    opencv官方案例目录
    MySQL - 在 Windows 上安装 MySQL
    QT5|C++|通过创建子线程方式实现进度条更新
    HashMap源码解析
    FlinkSQL系列02-Table表对象和SQL表视图
    Python:每日一题之顺子日期
    SQL零基础入门教程,贼拉详细!贼拉简单! 速通数据库期末考!(十)
    2023年AI生成音频研究报告
    Typora如何把图片上传到图床smms.app
  • 原文地址:https://blog.csdn.net/weixin_40803011/article/details/126170868