Android 自动化测试入门

[Android 自动化测试入门(笔记)]

一、selenium、WebDriver 了解

  在了解appium之前,先认识一下人们常常提到的selenium和webDriver。
  selenium是一个web的自动化工具,它可以模拟用户在浏览器下的操作。selenium1的升级版本是selenium2,selenium2又叫selenium webDriver,因为在selenium2中将webDriver整合到selenium里面去了。
官方文档:http://www.seleniumhq.org/docs/01_introducing_selenium.jsp

1.1 进一步了解webDriver:
  webDriver 是基于w3c行业标准的一套规范,类似于restfull,它约定了接受HTTP请求的格式和提供的服务。而appium和selenium都是webDriver协议的实现者。
- WebDriver 提供了一个设计良好的面向对象的 API,完全就是一套类库,独立的,不依赖于任何测试框架。Appium 就是直接继承了 WebDriver 的 Client 端,进行脚本编写和指令发送;
- WebDriver 是如何驱动浏览器的呢?WebDriver 它直接调用每个浏览器内置的自动化支持。
1.2 webDriver API:
- 官方API:http://www.seleniumhq.org/docs/03_webdriver.jsp#introducing-the-selenium-webdriver-api-by-example
- 中文API:https://wenku.baidu.com/view/6c03a2235acfa1c7aa00ccaf.html
- 在WebElement对象提供的各种定位元素策略:
1. 通过ID定位元素: driver. find_element_by_id()
2. 通过Name定位元素:driver. find_element_by_name()
3. 通过ClassName定位元素:driver. find_element_by_class_name()
4. 通过Xpath定位元素:driver. find_element_by_xpath ()
5. 通过PartialLinkText定位元素:driver.find_element_by_partial_link_text ()

参考文章:http://blog.sina.com.cn/s/blog_68f262210102vlie.html

1.3 Driver是什么?
- Driver就是Appium Server与手机建立的session的实例;
- 通过 Driver 封装好的 API 发送相关指令达到自动化。

AndroidDriver,iOSDriver,AppiumDriver和Remote WebDriver的用途或区别是什么?

二、APP UI自动化

2.1 APP UI自动化浅谈

转自testerhome社区:https://testerhome.com/topics/3309

2.2 App UI自动化初阶如何学习
- 了解App界面布局,学习如何去获取元素
- 学习元素的属性,掌握确定元素唯一性的属性筛选
- 了解各个平台的核心自动化驱动框架
- 挑选一款成熟、合适的框架,并学习其API和用法

2.2 UI自动化的疑点
- 收益/作用
- 用于最精部分的测试,适合冒烟测试和主流程的回归测试
- 投入成本
- 需要根据项目的复杂程度、开发模式、开发时间、项目是否相对稳定、需求变更是否频繁来判断
- 维护成本
- 需要根据项目的复杂程度、开发模式、开发时间、项目是否相对稳定、需求变更是否频繁来判断

2.3 APP UI 自动化的实质
1. 发送指令,取得元素;
2. 计算元素坐标;
3. 根据指令具体内容,自动化驱动程序进行操作。
2.4.各个自动化框架之间的区别
我们知道了APP UI自动化的实质,所以现在流行的几个自动化工具做UI自动化的实质都一样,都是上面的3个步骤。它们的区别是:

  1. 怎么发送指令?谁来把这个指令告诉手机?
  2. 手机用什么驱动自动化点击等操作(即自动化驱动程序是什么)?

2.5 现有常见的UI自动化测试框架
这里写图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值