- 1、本文档共121页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
7.5 脚本编写规范 在自动化脚本编写过程中. 脚本开发者的不规范行为经常会导致项目后期为此花费巨大的维护成本. 比如随意地命名、封装字段或者对象. 因此良好的脚本编写习惯十分重要. 它既能使脚本易于维护. 又能提高自动化脚本的稳定性. 那么. 好的脚本编写习惯都有哪些特质呢? 1. 统一的字段、方法、对象命名方式 一个好的命名方式将有效提高代码阅读者的阅读效率. 阅读者可以有效地根据命名习惯理解当前脚本代表的含义和数据类型. 如图7 -23 所示.脚本的命名可以很清晰地让阅读者知道当前方法的功能. 比如“clickLogout” 译为“单击退出登录”. 下一页 返回 7.5 脚本编写规范 2. 良好的脚本注释 良好的脚本注释可以让阅读者清晰地看到代码作者的编写思路. 为后期维护降低成本.请看图7 -24 中代码. 在这个方法中. 为HTTP 请求的JSON 数据作了备注. 阅读者可以清晰地看到当前数据的规范. 从而降低后续的维护成本. 所以在脚本编写过程中. 尽可能作完整的代码标记. 让阅读者可以快速明白每个方法的逻辑和作用. 上一页 下一页 返回 7.5 脚本编写规范 3.适当地封装公用代码和过长的代码 在代码编写过程中. 要注意保持代码整洁. 代码不整洁存在两种情况: 一种是代码行过长. 可阅读性很差. 一个方法的代码行数尽可能小于50 行. 如果50 行无法完成. 这个时候就要考虑进行代码封装. 另外一种是代码冗余. 相同功能的代码被不断复制使用. 此时应考虑将重复代码封装为公共函数. 以降低代码冗余. 4. 数据和脚本逻辑分离 脚本的数据和逻辑应该分离. 在测试数据过期后. 只需要修改脚本数据. 降低维护工作量. 提高维护效率. 上一页 下一页 返回 7.5 脚本编写规范 5. 以PO (Page Object) 模式封装脚本 Page Object 是自动化测试过程中总结出来的一种高效脚本设计模式. 其将测试对象中的每个页面和重要功能模块逐一抽象为对象类. 将针对对象的每个操作、业务流程逐一抽象为函数. 这样将达成页面中的每个元素、功能模块、业务流程都能够实现一次封装、多次使用. 一处维护、多处受益的目的. 图7 -25 中的脚本就是很典型的Page Object 设计模式的实际应用. 上一页 返回 图7 -1 启动IntelliJ IDEA 返回 图7 -2 新建Maven 项目 返回 图7 -3 输入GroupId 和ArtifactId 返回 图7 -4 完成项目创建 返回 图7 -5 增加相关配置 返回 图7 -6 重新导入Maven 包 返回 图7 -7 复制文件 返回 图7 -8 到官网下载安装文件 返回 图7 -9 输出版本信息 返回 图7 -10 设置系统变量 返回 图7 -11 把目录加入Path 路径 返回 图7 -15 启动IntelliJ IDEA 返回 图7 -16 新建Maven 项目 返回 图7 -17 输入GroupId 和ArtifactId 返回 图7 -18 完成项目创建 返回 图7 -19 增加相关配置 返回 图7 -20 重新导入Maven 包 返回 图7 -21 “apps” 目录 返回 图7 -22 配置应用的启动信息 返回 图7 -23 好的脚本命名方式 返回 图7 -24 示例代码 返回 图7 -25 Page Object 设计模式的实际应用 返回 7.4 移动端UI 自动化框架 7.4.1 框架初识 Appium 是一个开源、跨平台的测试框架. 可以用来测试原生及混合的移动端应用. Ap ̄pium 支持iOS、Android 及FirefoxOS 平台. Appium 使用WebDriver 的JSON Wire 协议. 来驱动Apple 系统的UIAutomation 库、Android 系统的UIAutomator 框架. Appium 对iOS 系统的支持得益于Dan Cuellar??s 对于iOS 自动化的研究. Appium 也集成了Selendroid. 以支持Android的老版本. 下一页 返回 7.4 移动端UI 自动化框架 Appium 选择了client - server 的设计模式. 只要client 能够发送HTTP 请求给server. cli ̄ent 用什么语言来实现都是可以的. 这就是为什么Appium 及WebDriver 能够支持多语言. 如果只使用苹果公司的UIAutomation. 则只能用JavaScript 来编写测试用例. 而且只能用In ̄struction 来运行测试用例. 同样. 如果只使用谷歌公司的UIAutomation. 则只能用Java 来编写测试用例. Appium 实现了真正的跨平台
文档评论(0)