软件UI-自动化测试课件.ppt

上传人(卖家):三亚风情 文档编号:3219286 上传时间:2022-08-07 格式:PPT 页数:124 大小:1.75MB
下载 相关 举报
软件UI-自动化测试课件.ppt_第1页
第1页 / 共124页
软件UI-自动化测试课件.ppt_第2页
第2页 / 共124页
软件UI-自动化测试课件.ppt_第3页
第3页 / 共124页
软件UI-自动化测试课件.ppt_第4页
第4页 / 共124页
软件UI-自动化测试课件.ppt_第5页
第5页 / 共124页
点击查看更多>>
资源描述

1、.自动化测试介绍自动化测试介绍.端端 自动化测试自动化测试.自动化测试自动化测试.移动端移动端 自动化框架自动化框架.脚本编写规范脚本编写规范返回.自动化测试介绍自动化测试介绍在学习在学习 自动化测试之前自动化测试之前.需要先了解自动化测试是什么需要先了解自动化测试是什么.自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程.通常通常.在设计了测试用例并通过评审之后在设计了测试用例并通过评审之后.由测试人员根据测试用例中由测试人员根据测试用例中描述的规程一步步执行测试描述的规程一步步执行测试.将得到的将得到的实际结果与期望结果比较

2、实际结果与期望结果比较.在此过程中在此过程中.为了节省人力、时间或硬件资为了节省人力、时间或硬件资源源.提高测试效率提高测试效率.减少人工重复工作减少人工重复工作.便引入了自动化测试的概念便引入了自动化测试的概念.在自动化测试中在自动化测试中.基于人机交互的自动化测试基于人机交互的自动化测试.称为称为 自动化自动化().下一页返回.自动化测试介绍自动化测试介绍 7.1.1自动化测试的优势和劣势自动化测试的优势和劣势自动化测试的优势自动化测试的优势:回归测试更方便可靠回归测试更方便可靠.可运行更多、更烦琐的测试可运行更多、更烦琐的测试.且快速高效且快速高效.可执行一些手工测试执行相当困难或者做不

3、到的测试可执行一些手工测试执行相当困难或者做不到的测试.如如大量的用户并发大量的用户并发.可更好地利用资源可更好地利用资源.具有一致性和可重复性的特点具有一致性和可重复性的特点.自动化测试脚本完全可复用自动化测试脚本完全可复用.可提升软件的可信度可提升软件的可信度.可进行多环境下测可进行多环境下测试等试等.自动化测试的劣势自动化测试的劣势:永远不可能完全替代手工测试永远不可能完全替代手工测试.自动化测试无法做自动化测试无法做到手工测试的覆盖率到手工测试的覆盖率.不是每个测试用例都适合做成自动化不是每个测试用例都适合做成自动化.如建议一如建议一个界面的布局是否正确个界面的布局是否正确.上一页 下

4、一页返回.自动化测试介绍自动化测试介绍手工测试发现的缺陷远比自动化测试多手工测试发现的缺陷远比自动化测试多.自动化测试是几乎无法发现自动化测试是几乎无法发现新缺陷的新缺陷的.其最大的用途是用来回归其最大的用途是用来回归.确保曾经的确保曾经的 没有在新的没有在新的版本上重新出现版本上重新出现.自动化测试工具是死的自动化测试工具是死的.它不具备任何想象力它不具备任何想象力.自动化测试的好坏完全自动化测试的好坏完全取决于测试工程师取决于测试工程师.自动化测试成本投入高自动化测试成本投入高.风险大风险大.对测试人员的技术要求高对测试人员的技术要求高.对测试工对测试工具同样有要求具同样有要求.适合自动化

5、测试的项目适合自动化测试的项目从投入产出比的角度衡量从投入产出比的角度衡量.只要自动化产出大于投入的产品只要自动化产出大于投入的产品.都可以考都可以考虑进行自动化测试虑进行自动化测试.那么如何计算自动化产出呢那么如何计算自动化产出呢?用一个简化的公式用一个简化的公式可以表达如下可以表达如下:上一页 下一页返回.自动化测试介绍自动化测试介绍自动化的收益自动化的收益 迭代次数迭代次数 全手动执行成本全手动执行成本 首次自动化成本首次自动化成本 维维护次数护次数 维护成本从产品维度的角度出发维护成本从产品维度的角度出发.全部手动执行成本越高全部手动执行成本越高.迭代次数越多迭代次数越多.则收益越明显

6、则收益越明显.所以体量越大所以体量越大.成熟度越高成熟度越高.更新频率更新频率越高越高.就越适合进行自动化测试就越适合进行自动化测试.简而言之简而言之.项目周期长项目周期长.系统版本不断系统版本不断.并且需求不会频繁变更并且需求不会频繁变更.此时此时是适合引入自动化测试的是适合引入自动化测试的.上一页 下一页返回.自动化测试介绍自动化测试介绍 7.1.3进行自动化测试需要具备的技能进行自动化测试需要具备的技能.建立自动化思维建立自动化思维能够发现问题能够发现问题.并辅以自动化方式解决问题并辅以自动化方式解决问题.这就是自动化思维这就是自动化思维.就像就像学习一门武功学习一门武功.自动化思维就是

7、武林秘籍自动化思维就是武林秘籍.而编程语言就是使用的兵器而编程语言就是使用的兵器.语言的选择决定了兵器是否好用语言的选择决定了兵器是否好用.而最重要的还是能否了解武林秘籍而最重要的还是能否了解武林秘籍的精髓的精髓.也就是建立自动化思想也就是建立自动化思想.测试相关的知识储备测试相关的知识储备比如进行比如进行 测试测试.就需要懂得、就需要懂得、.如果进行移动端测试如果进行移动端测试.就得具备就得具备 开发基础和开发基础和 开发基础开发基础.会调试会调试.上一页 下一页返回.自动化测试介绍自动化测试介绍.掌握一门开发语言掌握一门开发语言学习一种编程语言学习一种编程语言.、等都、等都可以可以.善于学

8、习善于学习.能够知其然且知其所以然能够知其然且知其所以然 行业发展太快行业发展太快.每隔一段时间就会出现一些新的东西每隔一段时间就会出现一些新的东西.原来很火原来很火的东西也会逐渐没落的东西也会逐渐没落.谁都无法预测谁都无法预测.上一页返回.端端 自动化测试自动化测试这里的这里的 指的是指的是 系统的电脑端系统的电脑端.在现有的众多在现有的众多 自动化工具中自动化工具中.端的自动化工具无疑是最多的端的自动化工具无疑是最多的.归纳为测试归纳为测试方案方案.主要有以下两种主要有以下两种:.录屏回放方式录屏回放方式按时间间隔完全记录用户的鼠标和键盘操作按时间间隔完全记录用户的鼠标和键盘操作.录制完成

9、后可进行回放录制完成后可进行回放操作操作.完全回放用户的操作完全回放用户的操作.该测试方案使用最为简易该测试方案使用最为简易.基本上无法进行复用基本上无法进行复用.一旦一旦 发生了变发生了变化化.或或 出现了卡顿导致出现了卡顿导致 未加载完毕未加载完毕.后续的操作就无法按照后续的操作就无法按照既定目标进行操作既定目标进行操作.所以录屏回放方式常用所以录屏回放方式常用于界面固定、业务简单的于界面固定、业务简单的 测试测试.网络上这样的测试工具较多网络上这样的测试工具较多.这里这里不再赘述不再赘述.下一页返回.端端 自动化测试自动化测试.图片识别方式图片识别方式对用户要操作的对用户要操作的 位置进

10、行截图位置进行截图.使用图片识别技术获取截图坐标使用图片识别技术获取截图坐标位置位置.并将工具或代码编辑的操作在此坐标位置进行播放并将工具或代码编辑的操作在此坐标位置进行播放.例如例如:用户要在打开用户要在打开“我的电脑我的电脑”后再打开后再打开“盘盘”中的中的“.”文件文件.使用截图识别方式则需要对使用截图识别方式则需要对“我的电脑我的电脑”“盘盘”“.”这三个图标进行截图这三个图标进行截图.按顺序设按顺序设置鼠标移动到图片识别到的位置置鼠标移动到图片识别到的位置.进行进行“双击双击”操作操作.图片识别方式相对录屏回放方式更加灵活图片识别方式相对录屏回放方式更加灵活.不受不受 卡顿的影响卡顿

11、的影响.可可通过图片识别方式确认通过图片识别方式确认 是否加载完毕是否加载完毕.再进行下一步操作再进行下一步操作.图片图片识别方式还可以事先对操作成功的界面的识别方式还可以事先对操作成功的界面的上一页 下一页返回.端端 自动化测试自动化测试关键位置进行截图关键位置进行截图.从而达到在从而达到在 自动化操作完成后确认操作结果自动化操作完成后确认操作结果是否成功的目的是否成功的目的.图片识别方式虽然灵活图片识别方式虽然灵活.但是也有缺点但是也有缺点.当产品当产品 变化频繁的时候变化频繁的时候.这种测试方案付出的代价就很大这种测试方案付出的代价就很大.有变化的截有变化的截图都需要重新截取图都需要重新

12、截取.目前互联网公司使用较多的是目前互联网公司使用较多的是 脚本自动化脚本自动化.其利用其利用 的图片处理库进行图片识别的图片处理库进行图片识别.配合配合 进行进行键盘和鼠标的操作键盘和鼠标的操作.在实际工作中在实际工作中.端端 自动化还有一种特殊的存在方式自动化还有一种特殊的存在方式.它需要它需要产品接入产品接入 自动化自动化.通过通过 获取产品获取产品 界面中控件界面中控件的、名称、坐标位置的、名称、坐标位置.再通过再通过 操控鼠标和键盘操控鼠标和键盘实现对产品实现对产品 的操作的操作.比较有名的比较有名的 自动化自动化 是是上一页返回.自动化测试自动化测试 自动化测试开源框架自动化测试开

13、源框架.框架初识框架初识 自动化自从提出到现在自动化自从提出到现在.经过多年的发展经过多年的发展.互联网中存在互联网中存在多种多样的自动化框架多种多样的自动化框架.比如、比如、等等.这些框架各有优势这些框架各有优势.目前多数企业级项目使用的自动化框架为目前多数企业级项目使用的自动化框架为.之所以选择此框架之所以选择此框架.主要是此框架有如下特主要是此框架有如下特点点:()是一套开源框架是一套开源框架.支持多种脚本语言支持多种脚本语言.方便对方便对其进行定制开发其进行定制开发.下一页返回.自动化测试自动化测试()支持原生支持原生.兼容性强兼容性强.适用于多数测试场景适用于多数测试场景.()成为成

14、为 标准标准.得到得到、等广泛的浏览器厂商支持等广泛的浏览器厂商支持.可以使用框架进行浏览器适可以使用框架进行浏览器适配测试配测试.本书以本书以.为主为主.而脚本语言则选用而脚本语言则选用.上一页 下一页返回.自动化测试自动化测试.环境搭建环境搭建()环境准备环境准备.(本书使用的版本为本书使用的版本为.).文件文件.主流浏览器主流浏览器 文件下载地址文件下载地址如下如下:/./.().上一页 下一页返回.自动化测试自动化测试:/./().:/./.().()安装安装 和和.()搭建搭建 环境环境.启动启动.如如图图 所示所示.新建新建 项目项目.单击单击“”按钮按钮.如如图图 所示所示.上一

15、页 下一页返回.自动化测试自动化测试输入输入 项目的项目的 和和.单击单击“”按钮按钮.如如图图 所示所示.输入工程名称输入工程名称.单击单击“”按钮按钮.完成项目创建完成项目创建.如如图图 所示所示.打开打开 配置文件配置文件.导入导入 安装包安装包.在在 文件中增加如下配置文件中增加如下配置.如如图图 所示所示.上一页 下一页返回.自动化测试自动化测试 .单击单击 项目项目 重新导入按钮重新导入按钮.重新导入重新导入 包包.如如图图 所示所示.复制复制 可执行文件至工程根目录下可执行文件至工程根目录下.如如图图 所示所示.至此至此.完成配置完成配置.上一页 下一页返回.自动化测试自动化测试

16、.介绍介绍.的主要特性就是与的主要特性就是与 的集成的集成.旨在提供一个更简单、更简洁的编旨在提供一个更简单、更简洁的编程接口以及解决一些程接口以及解决一些 的限制的限制.更好的支持页面本身不重新加更好的支持页面本身不重新加载而页面的元素改变的动态网页载而页面的元素改变的动态网页.的目标是提供的目标是提供一个良好设计的面向对象的一个良好设计的面向对象的.提供对现代先进提供对现代先进 应用程序应用程序测试问题的改进支持测试问题的改进支持.上一页 下一页返回.自动化测试自动化测试)用用 打开一个浏览器打开一个浏览器常用的浏览器有常用的浏览器有 和和 两种两种.是是 支持得比较成熟的浏览器支持得比较

17、成熟的浏览器.但是做页面的测试但是做页面的测试.其速其速度通常很慢度通常很慢.严重影响持续集成的速度严重影响持续集成的速度.这个时候建议使用这个时候建议使用.不过不过 运行时是看不到界面的运行时是看不到界面的.对于调试来说很不方便对于调试来说很不方便.使用哪种浏览器可以做成配置项使用哪种浏览器可以做成配置项.应根据需要应根据需要灵活配置灵活配置.()打开打开 浏览器浏览器:()上一页 下一页返回.自动化测试自动化测试 ().()打开打开 浏览器浏览器:()().上一页 下一页返回.自动化测试自动化测试()打开打开 浏览器浏览器:()().)打开测试页面打开测试页面对页面测试对页面测试.首先要打

18、开被测试页面的地址首先要打开被测试页面的地址(如如:/.).提供的提供的 方法可以打方法可以打开一个页面开一个页面:上一页 下一页返回.自动化测试自动化测试 ()().(.).(:/.)./上一页 下一页返回.自动化测试自动化测试.().(:/.).().至此已经可以实现一个简单的自动化脚本至此已经可以实现一个简单的自动化脚本:.上一页 下一页返回.自动化测试自动化测试.()上一页 下一页返回.自动化测试自动化测试/.()./.(:/.).上一页 下一页返回.自动化测试自动化测试/.().(:/.)./.(.().上一页 下一页返回.自动化测试自动化测试/.(!)./.()./.(:.().上

19、一页 下一页返回.自动化测试自动化测试/./.(.).()().().().(!).上一页 下一页返回.自动化测试自动化测试)./:!.(:.()./.().上一页 下一页返回.自动化测试自动化测试)基本操作基本操作()方法方法.操作浏览器跳转到指定地址操作浏览器跳转到指定地址.比如打开比如打开:/.(:/.).()方法方法.操作浏览器上方的导航功能操作浏览器上方的导航功能(前进、后退、刷新、跳转等前进、后退、刷新、跳转等).上一页 下一页返回.自动化测试自动化测试.().(:/.).().().().().().().()方法方法获取浏览器地址栏中的地址信息获取浏览器地址栏中的地址信息.()

20、.上一页 下一页返回.自动化测试自动化测试()方法方法 进行对象切换进行对象切换.可以切换、窗体等可以切换、窗体等.().()./切换至焦点元素切换至焦点元素.().()./切换至切换至 元素元素.().()./切换至窗切换至窗体体()方法方法上一页 下一页返回.自动化测试自动化测试 根据搜索条件查出所有符合条件的元素根据搜索条件查出所有符合条件的元素.(.()./通过通过 获取百度搜索框控件集合获取百度搜索框控件集合()方法方法 根据搜索条件查出符合条件的第一个元素根据搜索条件查出符合条件的第一个元素.(.()./通过通过 获取百度搜索框控件获取百度搜索框控件上一页 下一页返回.自动化测试自

21、动化测试().方法方法查找元素时查找元素时.定位元素的条件方法定位元素的条件方法.通过元素通过元素 获取元素获取元素.由于由于 在在 文档中具文档中具有唯一性有唯一性.所以所以 定位的方式准确度高定位的方式准确度高.(.()./通过通过 获取百度搜索框控件获取百度搜索框控件上一页 下一页返回.自动化测试自动化测试().方法方法查找元素时查找元素时.定位元素的条件方法定位元素的条件方法.通过元素的通过元素的 获取元素获取元素.由由于于 在并不是唯一性质在并不是唯一性质.所以在查询时需要注意筛选所以在查询时需要注意筛选正确元素正确元素.(.()./通过通过 获取百度搜索框控件获取百度搜索框控件()

22、.方法方法查找元素时查找元素时.定位元素的条件方法定位元素的条件方法.通过元素的通过元素的 获取元素获取元素.指向的元素在指向的元素在上一页 下一页返回.自动化测试自动化测试 中具有唯一性中具有唯一性.所以所以 定位方式准确度高定位方式准确度高 .(.(/)./通过通过 获取百度搜索框控件获取百度搜索框控件上一页 下一页返回.自动化测试自动化测试().方法方法查找元素时查找元素时.定位元素的条件方法定位元素的条件方法.通过元素的通过元素的 获取元素获取元素.一般指向元素的样式名称一般指向元素的样式名称.所以通过所以通过 获取元素通常可以获取一组样式相同的元素集获取元素通常可以获取一组样式相同的

23、元素集合合.(.()./通过通过 获取百度搜索框控件获取百度搜索框控件上一页 下一页返回.自动化测试自动化测试().方法方法查找元素时查找元素时.定位元素的条件方法定位元素的条件方法.通过连接的文本信息获取通过连接的文本信息获取 元素元素.(.(新新闻闻)./通过文本获取百度首页上的新闻连接通过文本获取百度首页上的新闻连接()方法方法上一页 下一页返回.自动化测试自动化测试查找元素时查找元素时.定位元素的条件方法定位元素的条件方法.通过元素的标签名来获取元素通过元素的标签名来获取元素.一一般情况下般情况下 定位比较麻烦定位比较麻烦.需要很多前置元素来辅助需要很多前置元素来辅助定位定位.(.()

24、./通过输入框的通过输入框的 标签定位百度搜索框标签定位百度搜索框上一页 下一页返回.自动化测试自动化测试()方法方法元素的操作方法元素的操作方法.对对 页面上的输入框发送文本信息页面上的输入框发送文本信息.(.().(软件自动化测试软件自动化测试)./在百在百度输入框中输入文本度输入框中输入文本上一页 下一页返回.自动化测试自动化测试()方法方法元素的操作方法元素的操作方法.对对 输入框进行内容清除输入框进行内容清除.(.().(软件自动化测试软件自动化测试).()./清空文本信息清空文本信息上一页 下一页返回.自动化测试自动化测试()方法方法元素的操作方法元素的操作方法.模拟用户单击模拟用

25、户单击 元素元素.(.().()./单击百度搜索框单击百度搜索框上一页 下一页返回.自动化测试自动化测试()方法方法获取元素的文本信息获取元素的文本信息.(.().(软件自动化测试软件自动化测试).()./获取输入框中的文本信息获取输入框中的文本信息上一页 下一页返回.自动化测试自动化测试)特定控件操作特定控件操作()下拉选择框下拉选择框().找到下拉选择框的元素找到下拉选择框的元素:(.(.().选择对应的选择项选择对应的选择项:.().上一页 下一页返回.自动化测试自动化测试或或.().不选择对应的选择项不选择对应的选择项:.().().().上一页 下一页返回.自动化测试自动化测试或者获

26、取选择项的值或者获取选择项的值:.().().()单选项单选项().找到单选框元素找到单选框元素:.(.().选择某个单选项选择某个单选项:.().上一页 下一页返回.自动化测试自动化测试清空某个单选项清空某个单选项:.().判断某个单选项是否已经被选择判断某个单选项是否已经被选择:.().()多选项多选项()多选项的操作和单选项差不多多选项的操作和单选项差不多:.(.(.).().上一页 下一页返回.自动化测试自动化测试.().().().()按钮按钮().找到按钮元素找到按钮元素:.(.().上一页 下一页返回.自动化测试自动化测试单击按钮单击按钮:.().判断按钮是否判断按钮是否:.()

27、.()左、右选择框左、右选择框.左边是可供选择项左边是可供选择项.选择后移动到右边的框中选择后移动到右边的框中.反之亦然反之亦然.例如例如:(.(.().().上一页 下一页返回.自动化测试自动化测试 .(.().().()弹出对话框弹出对话框().().().().().().上一页 下一页返回.自动化测试自动化测试()表单表单().表单中元素的操作和其他元素的操作一样表单中元素的操作和其他元素的操作一样.对元素操作完成后对表单对元素操作完成后对表单进行提交进行提交:.(.().().或或.()./只适合表单的提交只适合表单的提交()上传文件上传文件().上一页 下一页返回.自动化测试自动化

28、测试上传文件的元素操作上传文件的元素操作:.(.().:.().()和和 之间的切换之间的切换.一般来说一般来说.登录后建议登录后建议:.().().上一页 下一页返回.自动化测试自动化测试切换到某个切换到某个:.().().从一个从一个 切换到另一个切换到另一个:.().().切换到某个切换到某个:.().().上一页 下一页返回.自动化测试自动化测试()拖拉拖拉().(.().(.().().(.).().上一页 下一页返回.自动化测试自动化测试()导航导航().打开一个新的页面打开一个新的页面:.().(:/.).通过历史导航返回原页面通过历史导航返回原页面:.().().().().上

29、一页 下一页返回.自动化测试自动化测试)高级使用高级使用()读取读取.经常要对经常要对 的值进行读取和设置的值进行读取和设置.增加增加:/.(.).().().上一页 下一页返回.自动化测试自动化测试获取获取 的值的值:/.().().(:).(.(.上一页 下一页返回.自动化测试自动化测试().().根据某个根据某个 的的 获取获取 的值的值:.().().删除删除:/.().().上一页 下一页返回.自动化测试自动化测试/.().()./.().().()调用调用.对对 的调用是通过的调用是通过 来实现的来实现的.例如例如:上一页 下一页返回.自动化测试自动化测试 ().().(.).)(

30、).上一页 下一页返回.自动化测试自动化测试()截图截图.用用 截图截图:.().(:.)()页面等待页面等待.因为加载页面需要一段时间因为加载页面需要一段时间.如果页面还没加载完就查找元素如果页面还没加载完就查找元素.必然是必然是查找不到的查找不到的.最最好的方式就是设置一个默认等待时间好的方式就是设置一个默认等待时间.在查找页面元素的时候如果找在查找页面元素的时候如果找不到就等待一段时间再找不到就等待一段时间再找.直到超时直到超时.上一页 下一页返回.自动化测试自动化测试 提供两种方法提供两种方法.一种是显性等待一种是显性等待.另一种是隐性另一种是隐性等待等待.显性等待显性等待:().(:

31、/).(.)上一页 下一页返回.自动化测试自动化测试.()().(.().).上一页 下一页返回.自动化测试自动化测试()隐性等待隐性等待:().().().(.).(:/).(.().上一页返回.移动端移动端 自动化框架自动化框架 7.4.1框架初识框架初识 是一个开源、跨平台的测试框架是一个开源、跨平台的测试框架.可以用来测试原生及可以用来测试原生及混合的移动端应用混合的移动端应用.支持、支持、及及 平台平台.使用使用 的的 协议协议.来驱动来驱动 系统的系统的 库、库、系统的系统的 框架框架.对对 系统的支持得益于系统的支持得益于 对于对于 自动化的研究自动化的研究.也集成了也集成了.以

32、支持的老版本以支持的老版本.下一页返回.移动端移动端 自动化框架自动化框架 选择了选择了 的设计模式的设计模式.只只要要 能够发送能够发送 请求给请求给.用什么语言来实现都是可以的用什么语言来实现都是可以的.这就是为什么这就是为什么 及及 能够支持多语言能够支持多语言.如果只使用苹果公司的如果只使用苹果公司的.则只能用则只能用 来编写测试用例来编写测试用例.而且只能用而且只能用 来运行测试用例来运行测试用例.同样同样.如果如果只使用谷歌公司的只使用谷歌公司的.则只能用则只能用 来来编写测试用例编写测试用例.实现了真正的跨平台自动化测试实现了真正的跨平台自动化测试.选择选择 的原因如下的原因如下

33、:()支持支持 和和 自动化测试自动化测试.上一页 下一页返回.移动端移动端 自动化框架自动化框架()支持支持 所支所支持的所有语言持的所有语言.如、如、.以及以及 语言语言.还可以使用还可以使用 的的.()是一个开源框架是一个开源框架.方便扩展和定制方便扩展和定制.7.4.2环境搭建环境搭建.安装安装.()到官网下载安装软件到官网下载安装软件(:/./).如如图图 所示所示.上一页 下一页返回.移动端移动端 自动化框架自动化框架()获取安装文件后获取安装文件后.直接双击安装文件直接双击安装文件.根据程序的提示根据程序的提示.完成完成.的安装的安装.()安装完成后安装完成后.运行运行.输入输入

34、“”.如果安装成功如果安装成功.会输出对应的版本信息会输出对应的版本信息.如如图图 所示所示.配置配置 环境环境()环境配置环境配置:/./.()确保安装了确保安装了 或以上版本的或以上版本的.()设置设置 系统变量为用户的系统变量为用户的 路径路径.如如图图 所示所示:上一页 下一页返回.移动端移动端 自动化框架自动化框架()把把“”和和“”两个两个目录加入到系统的目录加入到系统的 路径里路径里.如如图图 所示所示:().:().安装手机驱动并测试连接真机安装手机驱动并测试连接真机完成上述步骤以后完成上述步骤以后.将手机与将手机与 通过通过 线相连线相连.在在 中输中输入入“”.若能看到设备

35、则表示连接成功若能看到设备则表示连接成功.上一页 下一页返回.移动端移动端 自动化框架自动化框架.安装安装()下载安装文件下载安装文件:/././.()直接双击直接双击“”文件进行安装文件进行安装.桌面上会生成一个桌面上会生成一个 的图标的图标.()把把 的的“”目录放到系统的目录放到系统的 路径里路径里.:().上一页 下一页返回.移动端移动端 自动化框架自动化框架()检查检查 所需的环境是否成功所需的环境是否成功.进入进入 命令行命令行.输入输入“”.出现提出现提示示“”.说明说明环境成功环境成功.配置配置 自动化项目自动化项目()启动启动.如如图图 所示所示.()新建新建 项目项目.单击

36、单击“”按钮按钮.如如图图 所所示示.()输入输入 项目的项目的 和和.单击单击“”按钮按钮.如如图图 所示所示.上一页 下一页返回.移动端移动端 自动化框架自动化框架()输入工程名称输入工程名称.单击单击“”按钮按钮.完成项目创建完成项目创建.如如图图 所示所示.()打开打开 配置文件配置文件.导入导入 安装包安装包.在在 文件中增加如下配置文件中增加如下配置.如如图图 所示所示:.上一页 下一页返回.移动端移动端 自动化框架自动化框架.上一页 下一页返回.移动端移动端 自动化框架自动化框架()单击单击 项目项目重新导入按钮重新导入按钮.重新导入重新导入 包包.如如图图 所示所示.()至此至

37、此.完成配置完成配置.测试测试 下载下载()下载测试的文件下载测试的文件.:/./()将下载的将下载的 放到项目的放到项目的“”目录下目录下.如如图图 所示所示.上一页 下一页返回.移动端移动端 自动化框架自动化框架 7.4.3框架框架 介绍介绍.打开一个应用打开一个应用在开始了解在开始了解 之前之前.需要了解需要了解 的驱动是怎的驱动是怎么初始化的么初始化的.并启动并启动 上的应用上的应用.前面已经了解了前面已经了解了 的启动方式的启动方式.的启动的启动方式与方式与 相似相似.但是在启动之前需要配置应用的启动但是在启动之前需要配置应用的启动信息信息.才能让驱动识别出要测试的应用才能让驱动识别

38、出要测试的应用.并分配元素解析策略并分配元素解析策略.如如图图 所示所示.上一页 下一页返回.移动端移动端 自动化框架自动化框架.(.(.).(./).(.).上一页 下一页返回.移动端移动端 自动化框架自动化框架 ().(.).(.).(.().上一页 下一页返回.移动端移动端 自动化框架自动化框架.(.).(.).(:/.:/).).(!).上一页 下一页返回.移动端移动端 自动化框架自动化框架.基本操作基本操作)()默认系统语言对应的默认系统语言对应的“.”文件内的数据文件内的数据.)()查找某一个语言环境对应的字符串文件查找某一个语言环境对应的字符串文件“.”内的数据内的数据.)()按

39、下某个键按下某个键.具体哪个键由具体哪个键由 值决定值决定.值定义在值定义在 类中类中:.(.)./发送回退键发送回退键上一页 下一页返回.移动端移动端 自动化框架自动化框架)(.)在按下某个键的同时按下附加键在按下某个键的同时按下附加键(/键等键等).具体是哪些键具体是哪些键.由由 值值(在在 类中定义类中定义)和和 值值(在在 类中定义类中定义)决定决定:.(.)./发送左发送左 回退键回退键上一页 下一页返回.移动端移动端 自动化框架自动化框架)()获取当前获取当前.比如比如(.):.()./获取当前的获取当前的)()根据根据 来判断该应用是否已经安装来判断该应用是否已经安装.)()安装

40、安装.为应用的本地路径为应用的本地路径.上一页 下一页返回.移动端移动端 自动化框架自动化框架)()卸载卸载.在在 系统中代表的是报系统中代表的是报名名.而在而在 中有专门的中有专门的 号号.)()关闭应用关闭应用.其实就是按其实就是按 键把应用置于后台键把应用置于后台.)()启动应用启动应用.)()先关闭先关闭.然后再启动然后再启动.上一页 下一页返回.移动端移动端 自动化框架自动化框架)(.)将字符数组用将字符数组用 位格式写到远程目录的某个文件中位格式写到远程目录的某个文件中.也可以理解为也可以理解为把本地文件把本地文件 到设备上到设备上.)()将设备上的文件将设备上的文件 到本地硬盘上

41、到本地硬盘上.)()将设备上的文件夹将设备上的文件夹 到本地硬盘上到本地硬盘上.一般远程文件为一般远程文件为“/”下的文件下的文件.上一页 下一页返回.移动端移动端 自动化框架自动化框架)()设置手机的网络连接状态设置手机的网络连接状态.可以开关蓝牙、数据流量可以开关蓝牙、数据流量.通过通过 中的属性中的属性来设置各个网络连接的状态来设置各个网络连接的状态:.(.)./设置当前状态设置当前状态.飞行模式关闭、飞行模式关闭、开开启、数据网络关闭启、数据网络关闭上一页 下一页返回.移动端移动端 自动化框架自动化框架)()打开通知栏打开通知栏.)()与与 类似类似.区别是区别是 关闭后立关闭后立即启

42、动即启动.而这个方法是关闭后等待秒后再启动而这个方法是关闭后等待秒后再启动.)()在在 系统中隐藏键盘系统中隐藏键盘.)(.)隐藏键盘隐藏键盘.只能用于只能用于 系统系统.上一页 下一页返回.移动端移动端 自动化框架自动化框架)()执行一个执行一个 动作动作.该该 动作是由动作是由 封装的封装的:().(.).().)()上一页 下一页返回.移动端移动端 自动化框架自动化框架执行多步执行多步 动作动作.即由即由 封装的多步操作封装的多步操作:().(.).().上一页 下一页返回.移动端移动端 自动化框架自动化框架.().().)(.)按下按下 控件中心点控件中心点.毫秒后松毫秒后松开开.如此

43、重复如此重复 次次:上一页 下一页返回.移动端移动端 自动化框架自动化框架 .(.().(.().).)(.)按下按下(.)点点.毫秒后松开毫秒后松开.如此重复如此重复 次次.)(.)上一页 下一页返回.移动端移动端 自动化框架自动化框架从从(.)滑到滑到(.).分分 步滑步滑.每一步用时是每一步用时是 毫秒毫秒.)()用用 个手指操作控件个手指操作控件.从对角线向中心点滑动从对角线向中心点滑动:.(.().(.().上一页 下一页返回.移动端移动端 自动化框架自动化框架)(.)以以(.)为基准为基准.计算得出计算得出(.).(.)两个两个点点.然后用然后用 个手指按住这两个点同时滑到个手指按

44、住这两个点同时滑到(.).)()与与()的动作刚好相反的动作刚好相反.用两个手指由控件的中心点慢用两个手指由控件的中心点慢慢移向控件的左顶点后右底点滑动慢移向控件的左顶点后右底点滑动.)(.)和和(.)的动作相反的动作相反.用两个手指从用两个手指从(.)点开始向点开始向(.)和和(.)两个点滑动两个点滑动.上一页 下一页返回.移动端移动端 自动化框架自动化框架)()一般用在一般用在 中系统中系统.根据根据 获获得控件对象得控件对象.)()锁屏若干秒后解锁锁屏若干秒后解锁(使用的时候提示还没实现该方法使用的时候提示还没实现该方法).)()滚动到某个滚动到某个 属性为指定的字符串的控件属性为指定的

45、字符串的控件.)()滚动到某个滚动到某个 属性包含传入的字符串的控件属性包含传入的字符串的控件.上一页 下一页返回.移动端移动端 自动化框架自动化框架)()设置上下文设置上下文.)()可用上下文可用上下文.)()当前上下文当前上下文.)()设置屏幕为横屏或者竖屏设置屏幕为横屏或者竖屏.上一页 下一页返回.移动端移动端 自动化框架自动化框架)()获取当前屏幕的方向获取当前屏幕的方向.)()利用利用 系统的系统的 中的属性来获取控件中的属性来获取控件.)()和上面一样和上面一样.不过获得的是多个控件不过获得的是多个控件.上一页 下一页返回.移动端移动端 自动化框架自动化框架)()利用利用 系统的系

46、统的 中的属性来获中的属性来获取单个控件取单个控件.)()和上面一样和上面一样.但是该方法获得的是多个控件但是该方法获得的是多个控件.上一页 下一页返回.移动端移动端 自动化框架自动化框架)()利用利用 来获取单个控件来获取单个控件.)()利用利用 来获得多个控件来获得多个控件.上一页返回.脚本编写规范脚本编写规范在自动化脚本编写过程中在自动化脚本编写过程中.脚本开发者的不规范行为经常会导致项目脚本开发者的不规范行为经常会导致项目后期为此花费巨大的维护成本后期为此花费巨大的维护成本.比如随意地命名、封装字段或者对象比如随意地命名、封装字段或者对象.因此良好的脚本编写习惯十分重要因此良好的脚本编

47、写习惯十分重要.它既能使脚本易于维护它既能使脚本易于维护.又能提高又能提高自动化脚本的稳定性自动化脚本的稳定性.那么那么.好的脚本编写习惯都有哪些特质呢好的脚本编写习惯都有哪些特质呢?.统一的字段、方法、对象命名方式统一的字段、方法、对象命名方式一个好的命名方式将有效提高代码阅读者的阅读效率一个好的命名方式将有效提高代码阅读者的阅读效率.阅读者可以有阅读者可以有效地根据命名习惯理解当前脚本代表的含义和数据类型效地根据命名习惯理解当前脚本代表的含义和数据类型.如如图图 所示所示.脚本的命名可以很清晰地让阅读者知道当前方法的功能脚本的命名可以很清晰地让阅读者知道当前方法的功能.比如比如“”译为译为

48、“单击退出登录单击退出登录”.下一页返回.脚本编写规范脚本编写规范.良好的脚本注释良好的脚本注释良好的脚本注释可以让阅读者清晰地看到代码作者的编写思路良好的脚本注释可以让阅读者清晰地看到代码作者的编写思路.为后为后期维护降低成本期维护降低成本.请看请看图图 中代码中代码.在这个方法中在这个方法中.为为 请求的请求的 数据作了备注数据作了备注.阅读者可阅读者可以清晰地看到当前数据的规范以清晰地看到当前数据的规范.从而降低后续的维护成本从而降低后续的维护成本.所以在脚本编写过程中所以在脚本编写过程中.尽可能作完整的代码标记尽可能作完整的代码标记.让阅读者可以快速让阅读者可以快速明白每个方法的逻辑和

49、作用明白每个方法的逻辑和作用.上一页 下一页返回.脚本编写规范脚本编写规范.适当地封装公用代码和过长的代码适当地封装公用代码和过长的代码在代码编写过程中在代码编写过程中.要注意保持代码整洁要注意保持代码整洁.代码不整洁存在两种情况代码不整洁存在两种情况:一种是代码行过长一种是代码行过长.可阅读性很差可阅读性很差.一个方法的代码行数尽可能小于一个方法的代码行数尽可能小于 行行.如果如果 行无法完成行无法完成.这个时候就要考虑进行代码封装这个时候就要考虑进行代码封装.另外另外一种是代码冗余一种是代码冗余.相同功能的代码被不断复制使用相同功能的代码被不断复制使用.此时应考虑将重复此时应考虑将重复代码

50、封装为公共函数代码封装为公共函数.以降低代码冗余以降低代码冗余.数据和脚本逻辑分离数据和脚本逻辑分离脚本的数据和逻辑应该分离脚本的数据和逻辑应该分离.在测试数据过期后在测试数据过期后.只需要修改脚本数据只需要修改脚本数据.降低维护工作量降低维护工作量.提高维护效率提高维护效率.上一页 下一页返回.脚本编写规范脚本编写规范.以以()模式封装脚本模式封装脚本 是自动化测试过程中总结出来的一种高效脚是自动化测试过程中总结出来的一种高效脚本设计模式本设计模式.其将测试对象中的每个页面和重要功能模块逐一抽象为其将测试对象中的每个页面和重要功能模块逐一抽象为对象类对象类.将针对对象的每个操作、业务流程逐一

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(软件UI-自动化测试课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|