实践
探讨完上述关于不同测试工具的使用特点,更准确的说,是安卓应用自动化测试工具的特点,我们不妨来实践(其实是模拟)一个移动应用的测试过程。这里我们选用API Demo作为被测应用,选用DroidPilot作为测试工具。
分析被测应用
被测应用API Demo使用标准Android SDK作为开发控件,且被测应用未加扰码,因此,界面上所有元素可以被DroidPilot识别。
对于一些非标准Android SDK控件开发的应用,这里有两种情况:一种情况控件完全由自己开发,如果是这种情况,DroidPilot完全无法识别对象;另一种情况是在标准控件基础上做了二次开发,这样的话DroidPilot只能识别到原生SDK那一层。对于这两种情况,都可以联系DroidPilot开发团队为非标准控件度身定制专属插件,用于识别被测控件。
对于扰码问题,正如上述《前置条件》章节所描述的,DroidPilot本身是无能为力的,只能请开发团队去掉扰码,打包一个不加扰码的测试包给测试团队使用了。
设计测试用例
这里我们假设一个测试用例是进入\App\Activity\Animation\Fade in\界面,对界面的元素(按钮、文本框、多选框、单选框、下拉列表)进行操作,并验证文本框的文字是否符合我的预期结果。测试步骤如下:
测试用例1 -验证\App\Activity\Animation\Fade in\界面元素 | ||
前置条件:API Demo已经启动,停留在起始页 | ||
步骤 | 动作 | 期望结果 |
1 | 点击App项 | |
点击Activity项 | ||
点击Animation项 | ||
点击Fade in项 | ||
在文本框输入"put your text here" | ||
勾选Checkbox1 | ||
向下滑动一次屏幕 | ||
点击下拉框 | ||
勾选Venus | ||
检查文本框 | 文字="textColorPrimary" |
开发测试脚本
先使用DroidPilot脚本编辑工具抓取各个屏幕的对象,然后把这些对象选入脚本设计器,按照测试用例的顺序来排列,如下图: