了解如何自动化针对不同设备和语言的Android应用测试。以下部分将介绍如何为Android测试设置环境,如何生成和执行测试,以及如果发生任何问题应采取的措施。以Android应用程序KeePassDroid为例,说明如何使用Ranorex自动化移动应用程序。
扩展信息
在Android设备上进行移动测试的第一步之后,请查找以下章节,其中提供了有关更高级主题和测试场景的详细信息。
基础设施
即使通过Wi-Fi实现自动化,建议您在测试创建和执行过程中将您的系统插入电源。
入门
添加设备
按照关于如何添加Android端点的说明进行操作。
仪器和部署您的Android应用程序
设置完Android设备后,应该自动执行的应用程序必须安装并部署到设备上。用于检测和部署APK文件的Instrumentation向导可以在端点选项,“创建移动测试”对话框中启动,也可以直接按照“ Instrumentation Wizard - Android ”一章中所述启动检测向导启动。
注意建议您为每个新的Ranorex版本重新安装您的应用程序。有关更多信息,请参阅移动测试 - 版本控制部分。
注意仪器向导可以从命令行启动。有关更多详细信息,请参阅“ 仪器向导 - 从命令行运行仪器向导 ”一节。
注意您也可以在录音或代码中测试和部署您的APK。有关详细信息,请参阅“ 第5课:Ranorex记录器 - 其他编辑选项 - 操作类型 ”一章以及“ InstrumentAndDeployAndroidApp ”方法的API文档。
如前所述,Android应用程序KeePassDroid是一个例子,如何使用Ranorex自动化移动应用程序。APK文件可以在https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/keepassdroid/KeePassDroid-1.99.10.apk下载 。
除了检测和部署Android应用程序之外,Instrumentation Wizard还允许您更新设备上的Ranorex服务以及部署允许Android进行Web测试的RXBrowser应用程序。
选择要部署的设备并将APK文件添加到仪器后,将按“下一步”按钮启动该过程。
通过按下'创建'按钮,仪器化的应用程序将自动在移动设备上启动,Ranorex Spy将在桌面上启动。
要使用项目填充存储库并记录您的操作,需要执行两个单独的步骤。
第1步:跟踪并添加
在这一步中,您将使用Ranorex Spy来识别AUT中的元素并将它们添加到您的存储库,以便您可以将操作分配给它们。
动作#1是一个'运行移动应用程序'的行动,在选定的设备上启动instrumented APK文件。
注意:您可以通过简单地增加活动名称为“启动参数”的启动活动添加到您的“投放移动应用”行动使用的语法如下:<fullpackagename> / <fullpackagename.activityname>
动作#2是一个按钮上的触摸事件。Ranorex有5种不同类型的触摸事件:
- 一个正常的“触摸”,相当于在桌面机器上点击鼠标,
- 通常打开上下文菜单的“长按”
- 和“触摸开始”,“触摸移动”和“触摸结束”模拟拖动手势。
注意'Touch'和'Long Touch'的持续时间可以在属性窗格中定义。您可以通过单击“触摸事件”操作项目上的上下文菜单项“属性”来打开此窗格。
动作#4是一个'设置值'动作,通常用于键盘输入。
动作#6是一个'等待不存在'的动作,当例如一个表示一个加载过程的项目是有用的,并且当该项目消失时自动化应该继续。
动作#7是如前所述的“验证”动作。
动作#8是一个'获取价值'动作,可用于将控制的属性值写回变量以供进一步处理。
动作#9是一个'报告'动作,用于向测试报告添加信息。
动作#10是一个'调用动作',它对列表控件上的滚动动作执行其索引'0'。“调用操作”直接调用所选控件的相应方法。
您可以使用invoke操作来调用用户定义的方法或获取和设置用户定义的成员。
调用这种用户定义的方法
- 键入'CallMethod'到调用动作的动作名字段
- 将方法名称添加到第一个参数字段
- 将要传递给方法的值或变量添加到参数字段中
要获取或设置成员,请使用'GetMember'或'SetMember'而不是'CallMethod'作为操作名称。
有关调用操作的更多详细信息,请参阅第5课:Ranorex记录器 - 其他编辑选项 - 调用用户定义的操作。
用户定义的方法也可以用相同的方式从代码中调用。这是一个简短的例子:
string text =(string)repo.App.Text.Element.InvokeAction(“CallMethod”,“myCustomGetTextMethod”);文字= (字符串)回购。App 。文本。元素。InvokeAction (“CallMethod” ,“myCustomGetTextMethod” );
行动#11是一个'移动按键'行动。'移动按键'操作模拟移动设备的物理按键“返回”和“菜单”。
行动#12是一个'关闭申请'行动。“关闭应用程序”操作停止移动设备上的选定应用程序。
注意确保在不同设备上运行测试时添加“关闭应用程序”操作,因为如果应用程序不会在设备上关闭,则第一个识别的设备上的应用程序将自动执行。
运行测试
只需点击'运行'按钮,照常运行测试。它将在您的移动设备上执行。