1.1 产品介绍

上海泽众软件公司简介

● 上海泽众软件科技有限公司成立于2003年10月，公司的宗旨是通过向软件开发企业提供最优质的测试工具软件。测试解决方案和测试咨询服务，帮助国内用户提高软件的品质。我们一直致力于软件测试工具领域的探索。于2004年推出了终端自动测试引擎（Terminal AutoRunner，简称TAR）在2005年，推出了第一个测试管理工具TestCenter，TestCenter与TAR一起构成了泽众软件自动化测试解决方案。在2006年推出了自动功能测试工具：AutoRunner，在2012年推出了自动性能测试工具：PerformanceRunner，在2013年推出了移动软件测试工具MobileRunner。AutoRunner、PerformanceRunner、MobileRunner与TestCenter构成了泽众软件的另外一个完整的自动化测试解决方案。经过不懈的努力，PerformanceRunner自动测试引擎、TestCenter得到了用户的认可和应用，表现出强大的生命力。 PerformanceRunner测试工具、TestCenter测试管理工具已经成为测试工具软件市场的重要选择。

上海泽众软件

http://www.spasvo.com/


1.1.2 产品简介

产品简介
自动测试简介

 自动测试过程就是通过模拟人工操作，完成对被测试系统的输入，并且对输出进行检验的过程。自动测试是由软件代替人工操作，对被测试系

统的 发出指令，模拟操作，完成自动测试过程。

● 测试脚本

 自动测试，就是使用一个程序来测试另一个程序（被测试的应用系统）功能的正确性。如果用来测试的程序本身非常复杂，也需要被测试，或

者编写困难，那么自动测试就失去了意义。因此，用来测试另外一个程序的程序往往是非常简单的，我们把这个程序称为“测试脚本”。 测试脚

本通常在测试工具的 IDE 里执行，并且获得 IDE 的支持。

● 自动记录

 当我们编写测试脚本的时候，往往发现编写脚本本身是很困难的：了解脚本的语法、了解测试过程、把测试过程转换成为测试脚本语句。自动

记录，就是通过记录一个操作过程来自动获得测试脚本的过程。通过自动记录，我们就能够得到一个完善的脚本，通过修改这个脚本，我们得到

更通用的测试脚本。
● 检查点

测试的目的是检查数据是否正确。 在测试的过程中，我们需要检查某个组件的某些属性满足某个条件。这个检查的位置和条件， 我们称为检

查点。 在 MobileRunner 中，使用ar.checkPoint(“图片名称”，”图片坐标”,”图片大小”)作为检查点的脚本语句，它检查对象

objectname 的属性 property 是否和期望值一致。 在使用中，可以使用检查点来检验对象的各个方面属性

MobileRunner功能测试工具简介

● MobileRunner 是面向移动平台的自动化测试工具。支持同时直接连接多台移动设备，通过脚本录制和执行，实现移动设备和应用的自动化测

试、设备兼容性测试、功能等测试工作。

MobileRunner可以进行

● 基于移动平台设备系统功能方面的测试

● 基于移动平台设备APP方面的测试

MobileRunner特点

● 在移动设备操作，录制创建脚本

● 编辑测试脚本、参数化、检查点设置

● 执行测试脚本，驱动手机测试进行

● 图片识别。

● 移动设备同步


1.1.3 系统要求

系统要求

在安装本软件之前请确认系统配置符合以下条件：

● 操作系统要求：Windows(32位/64位) 2000/xp/vista/2003/7/2008;

● 内存要求：不少于128M;

● 磁盘空间要求：不少于150M剩余磁盘空间；

● 安卓设备版本要求：安卓版本4.0以上


1.1.4 支持服务

服务支持

● MobileRunner产品通过在线MSN、电话、电子邮件为您提供支持与服务，也可访问我们的网站 http://www.spasvo.com/。为保证服务质量，确保有效地解决用户的问题，保障用户的项目实施进度，技术支持仅向授权用户和授权试用用户提供。请您在联系泽众技术支持时，告知您的单位名称和服务代码。

技术支持

上海：

● 售后电话：400 035 7887

● 电 话：021-61079698-8006

● 电子邮件：luyunfei@spasvo.com

西安：

● 电 话：029-83661390-602

有关培训、产品购买及试用授权问题，联系方式。

● 电 话：021-61079698-8006

● 电子邮件：luyunfei@spasvo.com


1.2 安装说明

● 进入本公司网站www.spasvo.com注册账户。

● 注册之后登录即可下载MobileRunner。

● 双击安装图示，按照提示安装完成，在安装的过程中有杀毒软件出现拦截提示时选择放行。

● MobileRunner的试用期为15天，如果想长期使用需要申请license,申请license的过程： 打开软件，点击菜单【许可证】->【申请许可证】，按工具提示进行申请。

● 将生成的req文件上传到公司网站上，我们会通过用户注册时的邮箱将license 发送至您邮箱。

● 收到license文件后在软件中点击菜单【许可证】->【导入许可证】即可。


1.3 功能介绍

用户界面

集成开发环境：

● (Integrated Development Environment 简称IDE)软件是用于程序开发环境的应用程序，一般包括代码编辑器、编译器、调试器和图形用户界面工具，也就是集成了代码编写功能、分析功能、编译功能、Debug功能等一体化的开发软件套。所有具备这一特性的软件或者软件套(组)都可以叫做IDE。如微软的Visual Studio系列，Borland的C++ Builder、Delphi系列等。

IDE环境菜单栏:

MobileRunner中的菜单栏如上图所示，主菜单包含文件、编辑、设备、执行、设置、许可证、帮助等菜单项，下面对每一项做一个简介。

● 文件菜单

如上所示，所有对脚本的管理操作都可以在文件菜单下完成，包括对脚本的新建，导入，保存，另存为，关闭，改变工作空间，最近打开，退出等等。

● 编辑菜单

如上所示，所有对脚本的编辑操作都可以在编辑菜单下完成，包括对脚本的撤销，重做，查找，替换，剪切，复制，粘贴以及对象库

● 设备菜单

如上图所示，本地设备列表按钮，点击会显示所有与电脑连接的安卓设备。

● 执行菜单

如上图所示，执行菜单只有开始执行按钮，开始执行菜单启动回放脚本功能。

● 设置菜单

如上图所示，设置菜单中包含了语言设置、扫描JDK/JRE、字号及显示录制选项等的设置，软件现在支持简体中文和英文设置，在程序初次启动时，会根据系统默认语言选择初始语言类型和字号，当用户手动选择语言类别和字号时，软件再次启动才会生效。本软件自带JRE1.6，如果用户电脑上在安装了MobileRunner后又安装了其他的JDK版本，则可以点击此按钮，将MobileRunner所需要的相应文件写入JDK中，省去了用户重装MobileRunner的麻烦。

● 许可证菜单

如上图所示，许可证菜单是MobileRunner新增的菜单，方便用户在软件中完成许可证的生成和导入工作，由于免费的许可证试用期为15天，当试用期过后再次使用软件后会提示LIC过期的提示，此时可以点击“申请许可证”菜单项，根据需要产生req文件，获得我公司为您配置的LIC文件后，可以点击“导入许可证”菜单项将其导入即可。

● 帮助菜单

如上图所示，帮助菜单为您提供软件使用帮助和公司产品介绍。

IDE环境工具栏:

1 2 3 4 5 6 7 8 9

● 如上图所示，工具栏共有9个按钮，下面简单介绍其功能。

按钮1：新建脚本，和【文件】→【新建】→【脚本】 菜单功能一样；

按钮2：保存改动脚本（快捷键Ctrl+S），和【文件】→【保存】菜单功能一样；

按钮3：录制脚本，和【录制】→【开始录制】菜单功能一样；

按钮4：回放脚本，和【执行】→【开始执行】菜单功能一样；

按钮5：脚本编辑时用以撤销（快捷键Ctrl+Z），和【编辑】→【撤销】菜单功能一样；

按钮6：脚本编辑时用以重做（快捷键Ctrl+Y），和【编辑】→【重做】菜单功能一样；

按钮7：脚本编辑时用以查找替换（快捷键Ctrl+F），和【编辑】→【查找/替换】菜单功能一样；

按钮8：脚本编辑时用以查找下一匹配点（快捷键F3），和【编辑】→【查找下一个】菜单功能一样；

按钮9：对象库按钮，用于查看脚本中存在的对象信息。

IDE环境三个区域:

● 项目管理区：创建项目，创建测试用例，进行项目浏览，切换对象浏览，在MobileRunner中位于垂直拆分条的左边；脚本编辑区：对测试脚本编辑，在MobileRunner中位于水平拆分条的上部；结果输出及参数表编辑：测试脚本标准输出，查看测试信息，编辑参数表，在MobileRunner中位于水平拆分条的下部。

● 【项目管理器】

项目管理器用来显示当前 IDE 中所有的项目，并且显示项目中的脚本。

项目管理器中的项目及脚本组织成一个树状结构，每一个项目名称是一个文件夹，其下的脚本都位于此文件夹下。

对于每一个节点，如果是项目名称，双击可以打开；如果是脚本，则双击可以把这个脚本在编辑器中打开。

树支持鼠标右键菜单，支持删除、增加等操作。

● 【脚本编辑器】

双击项目管理器中要编辑的脚本可打开脚本编辑器。

编辑器可实现关键字着色，支持多行注释（/**/）及单行注释符（//），支持脚本命令自动补全（快捷键Alt+/）。

如果脚本已被编辑过但还没有保存，在脚本表单中相应的脚本名称后会有一个星号提示符，提示你保存脚本，点击工具栏的保存按钮或是快捷键Ctrl+S保存后星号消失。

在编辑器中右击鼠标可以弹出如下快捷菜单，包含了一些常用的快捷操作菜单项：


1.3.2 项目与脚本操作

项目操作与脚本操作

项目操作

● 新建项目、导入项目

方式一：

方式二：

● 排除项目、删除项目、重命名项目

脚本操作

● 新建脚本、导入脚本

方式一：

方式二：

● 排除脚本、删除脚本、重命名脚本

改变工作空间

● 在项目管理器中的所有项目及脚本都在同一个工作空间，如果想打开不在此工作空间的其他项目或脚本，可以通过切换工作空间来实现。操作方式：【文件】→【改变工作空间…】，见下图。

注意：在切换工作空间时，会清空当前项目管理器中的所有项目，然后才会加载新的工作空间的项目和脚本，不同工作空间中的脚本不会出现在同一项目管理器中；在第一次使用MobileRunner时会提示设定一个工作目录，如下图，默认是“我的文档”。


1.3.3 录制脚本

录制脚本

安卓设备设置功能脚本录制

以录制录制安卓设备中设置菜单功能为例，详细的介绍一下录制安卓设备脚本的过程。

● 创建脚本

根据前面的【项目与脚本操作】一节所述方法创建一个名为e1.bsh的脚本（脚本名可任取），双击脚本打开。

● 录制脚本

首先需要安卓设备通过数据线连接电脑，点击菜单【设备】→【贝蒂设备列表】，或者是直接点击工具栏上的录制按钮，弹出

咨询窗口。

配置好后点击确定，软件将进入录制阶段，此阶段里软件界面会被隐藏，并在屏幕中显示一个录制信息窗口，显示出当前的

录制相关信息。下图所示的是点击了安卓设备上按钮生成的脚本。

在录制的每一步操作中，都会自动生成一个sleep动作。

● 停止录制

录制完成后，点击面板左上角的停止按钮，结束录制，此时在脚本里我们会看到面板上的脚本。

● 生成文件

在录制好脚本后，在项目目录下会存在如下几个文件。

第一个为图片文件夹，保存了脚本编辑器中的操作的截图，设置检查点的截图，检查点比对出错截图；第二个为脚本文件

保存了脚本编辑器中的脚本；第三个为参数表文件，是一个excel表格，所有的参数化数据都将被保存到这里，当然在我们没用

到参数化时，此文件中无数据。上面的三个文件都可以在软件中修改，不建议在软件外编辑。


1.3.4 回放脚本

回放脚本的过程，实质是对先前的录入动作的一次重复操作，只是这个过程是根据录入的脚本自动完成的。下面就以先前录入的安

卓设备脚本为例，介绍一下回放操作及注意事项。

● 单脚本回放

选中一个需要执行的脚本信息

点击开始执行按钮 [image] ，弹出设备列表页面，选择一个设备信息，点击回放按钮，弹出回放页面。

点击开始执行，分别在连接的手机和执行窗口回放之前录制的操作，结束操作完成后会生成日志信息

● 多脚本回放

在执行菜单中，点击开始执行按钮，弹出执行窗口，在执行窗口，点击批量执行按钮,弹出批量执行页面。

分别选择需要批量执行的脚本，点击开始执行按钮，选择批量执行日志存在的目录，点击确认开始执行

点击开始执行，分别在连接的手机和执行窗口回放之前录制的操作，结束操作完成后会生成日志信息文件

● 注意事项

1、回放时必须要将待回放的脚本打开，否则回放菜单和工具栏的回放按钮将不可用。

2、在编辑器中打开了多个脚本时，应确保待回放的脚本是当前编辑的脚本。

3、回放时一定要将各项状态置于录制时的初始状态，否则回放可能会失败。

4、在回放的过程中不要再操作安卓设备，直至回放完成，否则回放可能会失败。

5、如果回放的脚本被手工修改过一定要及时保存，否则修改过或是被注释掉的动作在回放时会得不到体现

6、在批量执行中如果有脚本执行失败，会自动在重新执行一次。


1.4 高手进阶

● 添加检查点

在MobileRunner中，可以添加检查点来验证相应的操作是否正常，其具体的操作是在录制脚本时添加相应的检查点。

一、在录制菜单点击开始录制按钮，弹出录制页面

二、点击截图按钮，截取当前截图并设置检查点（检查点可以选择全部界面比对或者局部界面）

三、鼠标需要设置检查点的区域,双击选中区域

说明：

1.检查点是一个图片检验比对的过程，在脚本回放的时候，设定的检查点出会比对检查点的截图，与当前图片的图片中元素信息是否一致。一致则通过，不一致则不通过。

四、会在脚本出自动生成检查点语句


1.4.2 添加延时

● 添加延时

在MobileRunner中添加延时有有两种方法，一种方法是录制脚本自动生成的，另一种是在脚本编辑框中手动添加延时。

一、在脚本编辑框中，选择一处没有添加延时的脚本

二、手动输入延时脚本命令。


1.4.3 执行次数和指定时间开始

● 执行次数和指定时间开始

在MobileRunner的批量执行中，我们可以设置批量执行测试的次数和指定时间开始执行。

一、在执行菜单点击开始执行按钮

二、在弹出执行页面，点击批量执行按钮。

二、设定执行次数。

三、设定延时开始时间


1.4.4 模拟物理按钮

● 模拟物理按钮

在MobileRunner的录制过程中，还提供对于安卓设备的物理按钮提供模拟功能。

1 2 3 4 5 6 7 8 9 10

● 如上图所示，工具栏共有10个按钮，下面简单介绍其功能。

按钮1：主页按钮

按钮2：搜索按钮

按钮3：菜单按钮

按钮4：返回按钮

按钮5：确认按钮

按钮6：文本输入

按钮7：增加音量按钮

按钮8：减少音量按钮

按钮9：锁屏按钮

按钮10：app按钮，输入app名称自动打开app。


1.5 脚本命令

● startActivity

命令含义：启动android应用程序命令。

命令参数：一个参数，要求输入APP包名及主类名称。

命令产生：在脚本之间调用时出现此命令，手工添加或点击录制菜单中的【APP】来添加。

命令举例：mr.startActivity("com.android.camera/.Camera");


1.5.2 sleep

● sleep

命令含义：休眠当前程序命令。

命令参数：一个参数，要求输入休眠时间。

命令产生：在脚本之间调用时出现此命令，手工输入来添加。

命令举例：mr.sleep(1000);休眠一秒


1.5.3 touch

● touch

命令含义：触摸屏幕操作命令。

命令参数：七个参数，分别代表点击获取的图片名称，图片X坐标，图片Y坐标，图片宽度，图片高度，

点击的X坐标，点击的Y坐标命令产生：在脚本之间调用时出现此命令，鼠标点击或者手工

输入来添加。

命令产生：在脚本之间调用时出现此命令，鼠标点击或者手工输入来添加。

命令举例：mr.touch("po151015.jpg",596,210,67,67,619,217);


1.5.4 touchKey

● touchKey

命令含义：点击设备物理按键命令。

命令参数：一个参数，要求输入点击的物理按键的名称。

命令产生：在脚本之间调用时出现此命令，鼠标点击或者手工输入来添加。

命令举例：mr.touchKey("BACK");


1.5.5 touchMove

● touchMove

命令含义：滑屏操作命令。

命令参数：五个参数，要求输入滑屏时的起始坐标、结束坐标和用时。

命令产生：在脚本之间调用时出现此命令，鼠标点击或者手工输入来添加。

命令举例：mr.touchMove(100,110,500,300,2000);


1.5.6 longTouch

● longTouch

命令含义：长按操作命令。

命令参数：七个参数，分别代表点击获取的图片名称，图片X坐标，图片Y坐标，图片宽度，图片高度，

点击的X坐标，点击的Y坐标及长按的时间

命令产生：在脚本之间调用时出现此命令，鼠标点击或者手工输入来添加。

命令举例：mr.touch("test11100625.jpg",549,851,101,101,600,900);


1.5.7 enterContext

● enterContext

命令含义：输入文本内容操作命令。

命令参数：一个参数，要求输入文本内容。

命令产生：在脚本之间调用时出现此命令，鼠标点击或者手工输入来添加。

命令举例：mr.enterContext("hello，spasvo");


1.5.8 checkPoint

● checkPoint

命令含义： 检查脚本执行结果的命令。

命令参数：五个参数，要求输入保存检查图的文件名，图片坐标及大小。

命令产生：在脚本之间调用时出现此命令，手工添加或点击录制菜单中的设置检查点来添加。

命令举例：mr.checkPoint("d1171940.png",59,583,587,92);


1.5.9 mr.callScript

● callScript

命令含义： 检查脚本执行结果的命令。在当前脚本中调用另一个脚本的命令。

命令参数：一个参数，要求输入被调用脚本的绝对路径。

命令产生：在脚本之间调用时出现此命令，只能够手工添加。

命令举例：mr.callScript("F:\\MR\workgroup\safsd\dasf.bsh");


1.5.10 localXY

● localXY

命令含义： 按照写出的坐标执行物理点击手机/平板的命令。

命令参数：两个参数，要求输入点击位置的X、Y轴坐标。

命令产生：在脚本之间调用时出现此命令，只能够手工添加

。

命令举例：mr.localXY(636,192);


1.6 常见问题

● 安装出错

此问题多发生在Win7操作系统上。由于软件安装时要进行各种读写操作、电脑硬件信息获取、插件的注册等，每一项操作都需要程序有最高权限，而在Win7下默认是没有最高权限的，所以安装往往会出现问题。解决方法是：右击安装包，在弹出菜单中选择以【管理员权限运行】即可。


1.6.2 开始录制无法连接设备

● 开始录制无法连接设备

此问题可能是系统中没有安装被测安卓设备的驱动，下载相关安卓设备的驱动，使系统能正常读取到安卓设备信息。


1.6.3 录制时无法获取对象

● 录制时无法获取对象

A.现在软件只支持录制安卓版本4.0以上的设备，安卓4.0以下的设备无法正常录制

B、请确认在录制脚本时，杀毒软件弹出的拦截消息被放行，如果选择禁止的话，无法录制出脚本。

C、请确认您申请的lic文件时是否选中了支持安卓的录制，如果没有选的话，录制不出脚本。


1.6.4 回放的时候检查点问题

● 回放时检查点检验错误

此问题可能是在脚本回放的时候，脚本执行速度过快，没有切换到相应的页面位置处就开始执行检验，所有在脚本执行结束后检查点会报错。解决办法就是在脚本执行的每一步操作中添加延时sleep或者修改延时时间


● 连接进度条运行到100%无反应

这个问题可能是在启动了MobileRunner以后，有开启手机助手之类的软件造成的adb冲突，只有重启MobileRunner后再点击录制按钮