zoukankan      html  css  js  c++  java
  • web自动化测试

    一、环境安装

    1、安装selenium

    命令行使用如下命令进行安装:pip install -U selenium

    2、安装chrome浏览器和chrome驱动chromedriver,二者的版本必须是一致的才行

      查看chrome的版本号可以在地址栏输入:chrome://version/ 

    3、chromedriver放在python的安装根目录即可

    chromedriver下载地址:http://npm.taobao.org/mirrors/chromedriver

    4、打开chrome,代码如下:

    from selenium import webdriver
    
    driver = webdriver.Chrome()
    

    运行之后,会打开chrome浏览器

    二、元素定位

    1、通过id定位,id值是固定的,则可以通过此方法定位,如果id是动态的,则不可以通过id来定位。

    语法:

    from selenium.webdriver.common.by import By
    
    #1、通过id定位
    driver.find_element_by_id("id名")
    #或者用以下方法
    driver.find_element(By.id, "id名")
    
    #2、通过classname找到一个元素
    driver.find_element_by_class_name("classname名")
    #通过classname找到所有符合条件的值,返回值是list,每一个值都是webelement对象
    driver.find_elements_by_class_name("classname名")
    
    #3、通过标签名tag name
    driver.find_element_by_tag_name("tag名")
    driver.find_elements_by_tag_name("tag名")
    
    #4、name
    driver.find_element_by_name("name名")
    driver.find_elements_by_name("name名")
    
    #5、通过链接的文本内容精确匹配
    driver.find_element_by_link_text("精确的文本")  #要完全匹配文本,不可多空格等
    driver.find_elements_by_link_text("精确的文本")
    
    #6、通过链接的文本内容模糊匹配
    driver.find_element_by_partial_link_text("模糊的文本")  #模糊匹配链接的文本
    
    # css
    driver.find_element_by_css_selector("")
    
    #xpath
    driver.find_element_by_xpath("")

    其中,用的比较多的是xpath定位,xpath分为绝对定位和相对定位

    绝对定位:以/开头,严格按照在html页面当中的顺序以及关系、位置

    相对定位:以//开头,在这个html页面当中,有没有符合表达式的元素,语法://标签名[@属性名=属性值]

     多个属性定位语法 : //标签名[@属性名="属性值"  and @属性名="属性值"]    //标签名[@属性名="属性值"  or @属性名="属性值"]

    如何确定xpath的定位是正确的呢?

    1、F12,进入开发者模式

    2、将鼠标放到要定位的元素区域,确保元素在这个区域当中

    3、按ctrl+F,能够看到如图所示的输入框

    4、在框中可以填入定位表达式,例如:

  • 相关阅读:
    Executors几种常用的线程池性能比较
    mac上利用minikube搭建kubernetes(k8s)环境
    基于redis的分布式锁二种应用场景
    alibaba canal安装笔记
    开源流媒体服务器SRS学习笔记(4)
    开源流媒体服务器SRS学习笔记(3)
    pygame-KidsCanCode系列jumpy-part18-背景滚动
    开源流媒体服务器SRS学习笔记(2)
    开源流媒体服务器SRS学习笔记(1)
    pygame-KidsCanCode系列jumpy-part17-mask-collide碰撞检测
  • 原文地址:https://www.cnblogs.com/kulankadamei/p/13290673.html
Copyright © 2011-2022 走看看