首页 > 其他分享 >自动化测试环境的搭建 及 识别元素的方法

自动化测试环境的搭建 及 识别元素的方法

时间:2023-03-13 18:45:14浏览次数:39  
标签:属性 keys driver send element 识别 find 测试环境 搭建

 

自动化测试环境的搭建 :

一、安装 selenium:

  安装方式一:

 

      pip install -U selenium

 

  安装方式二:

 

      手动安装 selenium:

 

         1、安装python包,选择全部组件(pip、安装过程中配置环境变量)解压selenium-4.8.2.tar.gz,然后用cmd进入解压目录

 

         2、使用命令python setup.py install 安装selenium

二、安装浏览器驱动:

  第一步:确定浏览器的版本

  第二步:下载对应版本的驱动程序

  第三步:解压,输入命令: python  setup.py  install

 

识别元素的方法:

(简单)

 

driver.find_element(By.ID,"kw").send_keys("gitee") # id属性识别
driver.find_element(By.NAME,"wd").send_keys("gitee") # name属性识别
driver.find_element(By.CLASS_NAME,"s_ipt").send_keys("gitee") # class属性识别
driver.find_element(By.TAG_NAME,"input").send_keys("gitee") # 根据标签名识别  慎用
driver.find_element(By.LINK_TEXT,"新闻").click() # 只针对 A标签 生效  标签文本内容
driver.find_element(By.PARTIAL_LINK_TEXT,"新").click() # 只针对 A标签 生效  部分标签文本内容
(高级)
绝对路径:
driver.find_element(By.XPATH,"/html/body/div[1]/div[1]/div[5]/div/div/form/span[1]/input").send_keys("hello")
相对路径:
driver.find_element(By.XPATH,"//span[1]/input").send_keys("hello")
元素属性:   
//标签名[@属性名=属性值]
driver.find_element(By.XPATH,"//input[@maxlength='255']").send_keys("hello")
//标签名[@属性名=属性值 and  @属性名=属性值]
driver.find_element(By.XPATH,"//input[@id='kw' and @maxlength='255']").send_keys("hello")

部分元素识别:
// 部分属性值识别  解决两个问题:动态元素(属性动态变化的元素)、属性值较长写代码冗余的问题
starts-with()  是 xpath 中的函数  判断  字符串开头的函数    contains()
driver.find_element(By.XPATH,"//a[starts-with(@href,'http://news')]").click()
driver.find_element(By.XPATH,"//a[contains(@href,'news')]").click()

 利用元素的文本内容进行识别:

 

text() 表示获取元素的文本     <标签名>元素文本</标签名>  <a>hao123</a>
driver.find_element(By.XPATH,"//a[text()='新闻']").click()

标签:属性,keys,driver,send,element,识别,find,测试环境,搭建
From: https://www.cnblogs.com/zhousha/p/17212460.html

相关文章

  • Docker搭建MySQL集群
    采用MySQL架构PerconaXtraDBCluster1.安装PXC集群#用pull拉PXC5.7.20版本[root@localhost~]#dockerpullpercona/percona-xtradb-cluster:5.7.205.7.20:Pulli......
  • Unity2021+Vuforia 实现物体识别播放指定MP3
     1.创建3D项目,添加Vuforia2.添加摄像机ARCamera3.插入key4.添加ImageTarget,指定数据和照片5.创建一个空组件,添加AudioSource音乐组件6.将录制的MP3文件导入编辑......
  • 3.datax-web搭建
    1.路径mkdir/home/datax-webcd/home/datax-web 2.下载https://github.com/WeiYe-Jing/datax-web 3.解压tar-zxvfdatax-web-2.1.2.tar.gzmvdatax-web-2.1.2......
  • 3.docker 搭建kafka和kafka-manager集群
    1.搭建zookeeper集群docker-compose.yml文件version:'3.1'services:zoo1:image:zookeeperrestart:alwayshostname:zoo1ports:-2181:2181environment:ZOO_M......
  • 课程详情页接口与页面搭建
    封装CommonListModelMixinfromutils.common_responseimportAPIResponsefromrest_framework.mixinsimportListModelMixinclassCommonListModelMixin(ListModelMi......
  • ubuntu22搭建zabbix6.0 TLS
    搭建Zabbix搭建环境ubuntu22.04.2TLSZabbix6.0TLSmariadbNginxPHP安装Zabbix存储库sudowgetwgethttps://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z......
  • Linux操作系统file命令 – 识别文件类型
    前言file命令用来识别文件类型,也可用来辨别一些文件的编码格式。(是通过查看文件的头部信息来获取文件类型,而不是像Windows通过扩展名来确定文件类型的)语法file[参数]......
  • docker搭建consul集群
    防止自己忘了,做个笔记。环境为两台主机,ip分别为:  192.168.2.9,192.168.2.7首先在 192.168.2.9上执行一下命令:dockerrun-d--nameconsul1--net=host-eCONSUL......
  • tensorflow搭建神经网络写法
    importtensorflowastfimportnumpyasnp#creatdatax_data=np.random.rand(100).astype(np.float32)y_data=x_data*0.1+0.3"""createtensorflowstructure......
  • mysql-8.0.x搭建主从
    概述master/slave用作备库的形式数据库的可用性开干envcentos7.x2c4gx2mysql8.0.28x01、mysql安装mysql-8.0.x搭建x02、修改my.cnfmaster[mysql]auto-r......