自动化脚本录制是帮助开发者基于控件的录制方式来生成自动化脚本(同时支持 WebView 中的 Web 控件识别), 录制好的脚本可以在不同分辨率、不同版本的Android和iOS设备上执行。
联系Testin客服,购买和开通专享设备后即可使用自动化脚本录制功能。
录制页面分为 工具栏、映射屏、步骤列表、步骤编辑、功能组件五个区域。其中工具栏主要包含脚本操作功能,映射屏为手机屏幕显示区域,所有生成的步骤在步骤列表中显示,而功能组件区域包含了脚本录制中需要用到的高级函数和组件。
开通专享设备后,通过脚本管理页面进入自动化脚本录制页面,在录制页面,可以通过操作手机屏幕、屏幕右键操作、功能操作三种方式来生成步骤,所有产生的新步骤均插入到当前选中步骤的后面。
操作流程
脚本描述和标签:初始化时设置,或者点击工具栏的【重命名】设置脚本信息。
清除数据:勾选“清除数据”后,每次在脚本执行后会清除应用数据,恢复到安装初始状态。
安装卸载:勾选” 安装/卸载“后 ,每次在脚本执行后会将应用卸载; 这样能保证每次应用是以第一次启动的状态运行,适用于录 制程序第一次使用时的场景。
每次录制,必须手动启动手机,可选手机是您所在企业已开通的所有独享设备。
启用手机后直接操作手机并不会自动生成步骤,必须点击开启录制后,才会生成步骤。 这样可以在修改脚本时避免所有手机屏幕操作都产生多余步骤。
如果录制的步骤需要修改,点击待编辑步骤后,右侧会显示步骤信息,并支持直接编辑,编辑结果将自动保存; 并且可以为每一个步骤添加步骤描述,相当于代码中的注释,方便后期维护理解。
复制/剪切:选中一个步骤,可以对步骤进行复制/剪切操作;目前只支持单步骤操作。
粘贴:将复制和剪切的步骤粘贴到选中脚本的下方。
删除:删除当前选中的步骤;目前只支持单步骤删除。
录制过程中,脚本会自动将更改内容保存到服务器; 完成录制后,点击工具栏的【保存】按钮保存本次录制,系统将给本次录制创建新的版本号。
单步调试按钮在脚本列表的上面,选中一个步骤点击单步调试后,系统将立刻执行该步骤,以验证所选步骤是否能够成功执行。 这样也就不需要为了验证某一个步骤而去回放整个脚本。
录制的脚本,可以及时回放以检查是否能够成功执行。
开启回放:点击【回放】按钮后执行回放,回放后系统会自动从第一个步骤开始执行整个脚本。
回放中:回放过程中,会高亮显示当前执行中的步骤,并在左侧显示执行界面的截图结果。
中断回放:再次点击【回放】按钮,终止当前回放。
启用手机并开启录制后, 操作手机屏幕时将自动生成步骤到步骤列表。 支持点击、双击、长按、左滑、右滑、上滑、下滑 的屏幕操作。
同时,可以通过屏幕右键进行上述各类操作,右键操作可以避免鼠标操作时的一些误操作。
所有操作基于控件录制,在不同尺寸、分辨率、版本的机型上均可正常执行。
断言的定义:断言的含义是“存在”,包含“断言存在”与“断言不存在”两种方式。
断言存在:如果断言的控件或者文本内容在当前页面存在,则会继续执行后续的步骤,如果不存在,则会提示失败并终止脚本执行。
断言不存在:如果断言的控件或者文本内容在当前页面不存在,则会继续执行后续的步骤; 相反,如果存在,则会提示失败并终止脚本执行。
屏幕右键断言:选中屏幕组件右键断言时,程序会自动识别所选组件是控件还是文本; 而控件和文本的区别在于,在执行该步骤时,是根据控件ID还是文本内容去寻找断言内容。
文本断言和文本变量断言:通过功能区的“文本断言”和“变量文本断言”两个组件生成。
使用自动化脚本录制支持在脚本中添加 if 逻辑,目前支持“文本”和“变量文本”的 if 判断;
文本逻辑支持通配符“*”号;而变量文本,还支持应用内与应用外的判断,如果当前页面
可以通过手机屏幕的右键操作和功能组件中的“if 文本逻辑”与“if 变量文本”来添加 if 逻辑。
每一个 if 逻辑必须有 if 结束,点击功能组件中的“if 结束”添加。
自动化脚本录制支持两种方式的循环逻辑:带条件的循环逻辑和无条件的循环逻辑; 其中带条件的循环逻辑是说必须在满足某一条件时才进入循环体,如果不满足循环条件则会直接跳过循环执行后续步骤,目前循环条件仅支持控件存在判断;
测试播放器时,相当于播放器上的按键。非播放器场景下,点击后无反应。
相当于电视遥控器上的按键,在测试电视盒子时很方便。
脚本中需要用到的变量, 必须先声明后才能使用。
变量分为全局变量和局部变量,变量名称只能包含字母、数字和下划线,且至多输入30个字符; 全局变量的所有字母必须大写;局部变量首字母必须为小写,其他字母无限制。
全局变量在任务中,跨脚本时依然生效,而局部变量仅在本脚本中有效。
通过控件变量赋值:映射屏选中控件,右键“变量赋值”;
表达式赋值:功能箱点击“变量表达式赋值”,表达式支持“+”、“-”、“*”、“/”;字符串支持“+”。
可以在脚本中插入变量处理的步骤
字符串截取:截取变量值,可设置开始和结束标识符。 举例:a=12345,设置开始:1,截止:4,返回结果:23。
转为控件序列:将字符串的每一个字符用“,”分开。 举例:a=12345,返回结果:a=1,2,3,4,5。
只保留数字:去除变量值中的非数字字符。 举例:a=a123b123,返回结果:a=123123。
去掉千位分隔符:去除数字变量值中的逗号。 举例:a=1,000,000,返回结果:a=1000000。
正则表达式:替换变量值中的内容。 举例:a=1223452,replaceAll(‘2’,‘0’),返回结果:a=10023450。
可以在当前脚本中插入子脚本,其中子脚本是调用关系,不能修改。从功能箱中添加。
使用调用脚本功能,可以将通用的操作(比如登录)录制成一个脚本,这样新录制的脚本可以直接使用通用脚本,免除重复录制工作,极大的减少重复工作量,提高录制效率。
插入等待后,脚本执行到等待步骤时会自动等待设定的时间后再执行后续操作。
在需要等待后台数据返回或者延时操作才进行下一步操作的场景中,可以插入等待,以保证在不通网络环境和机型上能够正常获取数据。
通过功能箱插入截图,该步骤会自动截取并保存手机屏幕。
使用Monkey测试可以测试App的稳定性和容错性能,以及App的强度承载能力。
通过功能箱插入Moneky测试,支持自定义测试时间与测试间隔。