UI自动化测试

本文介绍了UI自动化测试,重点讲解了Selenium在Web端的使用,包括其不同版本、SeleniumIDE、WebDriver、SeleniumGrid的功能,以及如何进行浏览器驱动安装、前端元素定位(如ID、Name、Classname等)和使用XPath/CSSSelector的方法。
摘要由CSDN通过智能技术生成

UI自动化测试

使用UI自动化测试就是用代码模拟人的操作(点击、输入、滑动、下拉选择)

分类

  • web网站

    QTP、selenium

  • PC端软件

    用的少

  • 移动端

    Appium

一、selenium

用于完成web网页自动化测试

selenium(化学元素:硒)

  • selenium1.0

  • selenium2.0

  • selenium3.0

    2016年出现的这个版本

    selenium IDE:提供了将操作转换为代码的功能,会记录人的动作,转换为selenium代码

    selenium webdriver:提供了控制浏览器执行的功能

    selenium Grid:提供了分布式执行测试用例的能力

    注意:

    谷歌、火狐、edge、ie(已经被放弃)、欧明 3.0的时候浏览器都由各自浏览器厂商开发

  • selenium4.0

提供了相对定位的功能

selenium Grid:支持K8s上部署

二、安装

1、selenium其实虽然称之为工具,但是实际是python中的一个库
 pip install selenium==3.14
2、安装浏览器

谷歌、火狐、edge

3、下载浏览器驱动

根据浏览器版本下载

谷歌的驱动下载网站打不开,所以要使用淘宝备用地址

创建D:\driver将驱动放到这个路径中去

要将这个路径添加到环境变量path中,添加之后需要重启电脑才能生效

三、前端

html:页面显示的内容

css:进行样式布局的

JS:让页面元素动起来

四、元素定位

常见元素的定位方式
  • id

    如果某个元素有的id属性,那么如果id属性的值唯一,则可以利用该属性的值定位

    如果id的属性的值是一串无序的字母或数字,则不能使用,有可能是动态id

     driver.find_element_by_id("id属性的值")
  • name

    根据name的属性的值来定位,但是如果name属性的值再当前页面不唯一,则是无法定位的

     driver.find_element_by_name("wd")
  • class name

    class属性的值,不唯一的可能性很大

     driver.find_elements_by_class_name("s_ipt")
  • tag name(通过标签名本身选择,一般无法使用)

     driver.find_element_by_tag_name("标签名")
  • link text(一般不要使用)

     driver.find_element_by_link_text("百度一下")
  • partial link text(一般不要使用)

     driver.find_element_by_partial_link_text("百度一下")
  • xpath

    /:代表的直接子节点

    //:后代节点

     //a[@href="//item.taobao.com/item.htm?id=9413266033&scm=1007.40986.369799.0&pvid=4e3f6254-f6b3-4f24-a12e-e18b8e447a79"]//img
     driver.find_element_by_xpath('//input[@name="wd"]').send_keys("手机")

  • css selector

    根据标签以及标签的属性进行定位

     driver.find_element_by_css_selector('input[name="wd"]')
     #如果class属性的值唯一,也可以将其写成CSS的语法
     .s_ipt
     from selenium import webdriver
     #打开一个浏览器
     driver=webdriver.Edge("D:\driver\msedgedriver.exe")
     # driver=webdriver.Chrome()
     #设置浏览器最大化
     driver.maximize_window()
     #隐式等待
     driver.implicitly_wait(10)
     #打开网页
     driver.get("https://www.taobao.com/")
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值