演示了如何使用Appium创建和运行第一个App自动化测试用例。
01
打开待测应用程序
在使用Appium进行Android或iOS设备的自动化测试之前,读者必须已经搭建完成了自动化测试环境(详见电子版附录A.5节或附录A.6节),并安装好了待测应用程序(详见4.1.2节)。
在4.1.2节中,笔者使用了许多初始化参数,这些初始化参数有些是Android和iOS设备通用的,有些则只适用于Android或iOS设备,常用的初始化参数见表4-4。
■ 表4-4初始化参数
1. 打开Android待测应用程序
要打开Android待测应用程序,只需要将Appium服务器地址和初始化参数传递给Remote对象即可。为此新增open_app模块,并编写打开待测应用程序的代码。
展开全文
【例4-13】打开待测应用程序。
以上代码中的appPackage和appActivity分别表示Android应用程序的包名和Activity名,一个包唯一标识一个Android应用程序,而一个Activity表示一个页面。appPackage和appActivity的值如何获取呢?在确保待测应用程序已经打开的情况下,执行命令可获取appPackage和appActivity的值,命令如下:
adb shelldumpsys window | findstr mCurrentFocus
说明/
如果不使用appPackage和appActivity参数,则必须要指定app参数。
确保Android设备与计算机连接正常,并打开Appium服务器后,执行以上测试代码便可打开待测应用程序了。
2. 打开iOS待测应用程序
如果已经成功打开了Android待测应用程序,那么打开iOS待测应用程序就很简单了,只需替换上述代码中的初始化参数即可,代码如下:
对于不同应用程序;Bundle ID是不同的,可以使用ios-deploy查看Bundle ID。在使用ios-deploy之前需要执行以下命令来安装它:
brew installios-deploy
然后,执行命令查看iOS设备中已安装的所有应用程序的Bundle ID,命令如下:
ios-deploy --id a1bf89a6d882010cd9314dd7544e21eac6482e00 --list_bundle_id
说明/
如果不使用bundleId参数,则必须要指定app参数。
确保iOS设备与计算机连接正常,并打开Appium服务器及WebDriverAgent之后,执行以上测试代码便可打开待测应用程序了。
另外,在iOS自动化测试过程中会在macOS计算机中生成一些日志、临时文件或Xcode派生数据文件,由于这些文件不能自动清除。因此需要手动清除。文件路径如下:
/Users/lujiatao/Library/Logs/CoreSimulator/*
/Users/lujiatao/Library/Developer/Xcode/DerivedData/*
以上路径为笔者的,读者应根据实际情况进行替换。
实例讲解
自动化测试项目实战
从入门到精通(微课视频版)
精彩回顾
第一个unittest示例
演示了如何使用unittest创建和运行第一个单元自动化测试用例。
第一个pytest示例
演示了如何使用pytest创建和运行第一个单元自动化测试用例。
简单请求和响应
演示了如何使用Requests创建和运行第一个HTTP接口自动化测试用例。
使用Java API
演示了如何使用Java API创建和运行第一个Dubbo接口自动化测试用例。
打开浏览器
演示了如何使用Selenium创建和运行第一个Web自动化测试用例。
下期预告
编写简单测试用例
以实际项目为依托,介绍如何编写一个简单的自动化测试用例。
将公共部分封装为函数
介绍如何将公共部分封装为函数,这是使用模块化来优化自动化测试用例的一种方法。
搭建Python私有仓库
介绍如何搭建一个Python私有仓库,以便使用函数库的方式来优化自动化测试用例。
使用Excel作为数据源
介绍如何使用Excel作为数据源进行数据驱动测试。
变量和常量
介绍关键字驱动测试框架Robot Framework中的变量和常量的用法。
自定义匹配器
介绍第三方断言函数库PyHamcrest的自定义匹配器功能。
02
参考书籍
书名:自动化测试项目实战——从入门到精通(微课视频版)
⇡ ⇡ ⇡ 点击上图查看更多图书信息 ⇡ ⇡ ⇡
本书特色
(1) 理论与实战案例结合。知识脉络全面、清晰,学习路线明确,案例丰富,便于读者学习知识点。
(2) 内容合理,循序递进。提供基础篇、进阶篇、实战篇的内容,以满足不同层次读者的需求。
(3) 视频讲解,强化实操。为第7章中项目案例实操部分配备微课视频讲解,便于读者理解、学习和掌握。