自动化测试之selenium工具使用

本文介绍了自动化测试的前提条件和适用场景,重点讲解了Selenium的起源、组成和工作原理。此外,还提到了自动化测试的必备工具,如SeleniumIDE,以及Firefox、Chrome、IE等浏览器的启动方法。文章还涵盖了元素定位、API模块和一些特殊操作,为读者提供了全面的自动化测试入门指导。
摘要由CSDN通过智能技术生成

1. 自动化测试的前提

1.1 什么是自动化?

  • 减少人力成本
  • 完成大量重复性工作
  • 提高测试效率
  • 保证工作的一致性,提高信任度
  • 完成手工不能完成的工作

1.2 是否适合做自动化?

  • 时间 (项目周期长)
  • 人员 (熟悉自动化)
  • 系统(项目主体稳定)
  • 领导(领导支持推荐使用自动化)

1.3 在什么情况下做自动化

  • 单元测试?
  • 集成测试?
  • 接口测试?
  • UI测试

1.4 什么样的项目需要做自动化

  • 需求变更慢
  • 周期长
  • 脚本可重复利用

1.5 自动化工具、框架的选择

  • Selenium Webdriver
  • FireBug
  • FirePath

2. Selenium 简介

2.1 Selenium来历

  • 一个为减少测试工作的同行Jason Huggins同行通过js代码库开发的

2.2 Selenium 家庭成员

  • Selenium RC
  • Selenium IDE (自动化脚本录制工具)
  • Selenium Webdriver
  • Selenium Grid (在不同的浏览器运行脚本之类的)

2.3 Selenium 工作原理

 ↓ ———————— Response ————————    
脚本 ====> webdirver ===> 浏览器
 —————————— Request —————————↑

3. 自动化测试的必备工具

  • 选择火狐浏览器,版本一般选择27-32版本之间的
  • 安装FireBug、FirePath

Selenium IDE 的安装以及使用

  • 安装

  • 录制
打开--浏览器顶部-工具-selenium IDE-打开
录制按钮-红色的时候是录用状态
URL
Test Case
操作区域:command操作-target元素-value值

4. Selenium IDE 安装及使用简介

5.自动化框架环境搭建

6.常见浏览器启动

  • Firefox 启动
driver = new FirefoxDriver()
System.setProperty("webdriver.firefox.bin", "E:/Firefox/firefox.exe")
  • Chrome启动
driver = new ChromeDriver();
System.setProperty("webdriver.chrome.driver", "E:/webdriver/chromedriver/chromedriver.exe")
  • IE 启动
    • 需下载驱动
  • driver = new InterExplorerDriver();
    System.setProperty("webdriver.ie.driver", "E:/webdriver/iedriverserver/IEDriverServer.exe")
    

webdriver常见元素定位

  1. By.id
  2. By.name
  3. By.tagName
  4. By.tagName
  5. By.className
  6. By.linkText
  7. By.partialLinkText
  8. By.xpath
  9. By.css
  10. table

常见API模块:

  1. 打开网址API.

    • Driver.get()
    • Driver.navigate.to()
  2. 操作浏览器API

    • Driver.navigate().refresh 刷新
    • Driver.navigate().forward 前进
    • Driver.navigate().back 向后
    • Driver.getTitle() 打印标题
    • Driver.getCurrentUrl() 获取当前URL地址
    • Driver.manage().window().maximize()浏览器大小 - - - - - Driver.quit 推出并关闭浏览器,没关闭进程
    • Driver.close() 关闭浏览器,关闭进程 通过Js操作滚动条操作 操作浏览器cookic ) 
  3. 输入框操作API

    • Send Keys()
    • Clear()
    • getText()
    • Click()
  4. 选择框处理

    • 单选框
    • 复选框
    • 下拉框
    • iframe窗口处理
    • 弹窗处理
  5. 页面元素处理

    • 等待加载
    • 根据属性获取元素值 获取对象的css属性
    • 获取对象状态:页面是否显示isdisplay
    • 元素是否存在find_element
    • 元素是否选中isSelected()
    • 是否处于灰化状态 idEnabled
    • 特殊操作讲解:
      • 报错是截屏保存
      • 模拟鼠标右键
      • 鼠标悬浮
      • 上传文件
      • 日期控件处理
      • 浏览器滚动条操作
        6、窗口处理API 7、JS处理 8、特殊处理
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值