接口自动化测试-脚本管理
TestinPro提供关键字驱动方式编写接口脚本,提供对接口、Web(Http、Socket、MQTT、Dubbo、Web Service等主流协议及XML、JSON等报文)自动化测试支持,进一步提升自动化测试的覆盖范围。
关键字驱动自动化测试除提供主流的接口通讯协议和报文格式,也提供相应的可扩展性,用户可以根据自身需求,编写接口通讯服务(基于Python或Java语言),提供相应的关键字接口,测试人员可基于关键字接口编写测试用例,进行自动化测试。
脚本列表
- 接口脚本列表使用树+表格的形式进行管理,其中树的管理支持自定义层级的目录化,支持目录的复制、剪切功能。表格提供相应的查询、排序、分页功能。点击目录树任意目录,右侧表格显示该目录下及其子目录的所有脚本信息。
脚本列表示意图 - 脚本来源:由接口的Online编写。
- 脚本目录分为测试用例目录和公共资源目录,目录支持鼠标右键的点击操作。
a) 测试用例目录:按应用划分脚本,根目录为应用名称。
根目录仅支持新建目录和刷新操作;
其他目录下可新增测试集,测试集是脚本的集合,需要在测试集上单击鼠标右键,选择“新增测试用例”——》“关键字组织”来进入脚本编写界面,新建脚本;
在当前目录下新建的测试集和脚本自动保存在该目录;
目录树右键功能:支持新增目录、新增测试集、新增测试用例、重命名、刷新、删除、剪切、复制等功能。需要注意的是接口的脚本需要归属于测试集之下,即需要在测试集右键才能新建该脚本,而APP录制的脚本则无需遵从该规则,即目录下可直接新建该脚本。如下图:
b) 公共资源目录:管理可被接口脚本调用的资源,资源分为公共资源、私有资源和类库资源
公共资源:所有应用共享的用户关键字,可在所有应用的脚本中被使用,支持鼠标右键新增公共资源;
私有资源:根据应用分类的私有用户关键字,仅可在该应用下的脚本中被使用,根目录下显示的一级目录为应用名称,在应用名称上右键可新建私有资源;
类库资源:类库关键字,初始化带有的关键字,所有脚本中均可用,类库资源不支持任何鼠标右键操作。
资源树右键功能:支持新增资源、新增关键字、编辑、刷新、删除、剪切、复制等功能。需要说明的是类库资源下的关键字是系统集成类库所自带的关键字,所以除了刷新外没有任何操作。如下图: - 脚本列表信息:编号、名称、创建时间、创建用户、更新时间、操作
列表功能:
单脚本的编辑和删除;
支持批量删除;
除操作列外,可按任意列信息进行排序;
支持编号和名称的查询。 - 资源列表信息:名称、类型、描述、操作
列表功能:
单资源的编辑和删除(类库资源不支持);
支持批量删除(类库资源不支持);
可按名称和类型列信息进行排序;
支持名称的查询。 - 测试集:测试脚本的集合,测试人员可在测试集中定义参数。所定义的参数针对测试集下所有测试脚本可用。
测试集示意图
接口Online-编写脚本
- 编写页面分为四个部分:标题栏、工具栏、基本信息编辑区、步骤列表、步骤编辑区。
a) 标题栏:支持声明变量(在该处所声明的变量针对本测试脚本可用,变量也支持不声明直接使用,格式${变量名})、保存脚本及脚本位置信息。
b) 工具栏:支持添加步骤、删除步骤、回放脚本。
c) 基本信息编辑区:对脚本名称、说明等基本信息的编辑和管理,“脚本”录制界面和“资源”录制界面在基本信息编辑区略有不同。
d) 步骤列表:显示脚本步骤。
e) 步骤编辑区:对各个步骤中关键字的参数进行编辑,未新建步骤或未选中步骤时该区域隐藏。 - 页面结构灵活,左侧基本信息编辑区可随意收缩/展开,点击任意步骤或添加步骤展开右侧步骤编辑区,可随时关闭,方便调节布局,保证脚本步骤的最优展示。
- 基本信息编辑区包含编号(保存后程序自动生成)、名称、说明、启动步骤、结束步骤和标签。
a) 用户可在启动步骤中添加多个关键字,脚本会在执行步骤之前先执行启动关键字的内容,也可以在结束步骤中添加多个关键字,脚本会在执行步骤之后执行结束关键字的内容。
b) 用户可按自身需求建立多个标签,以标识脚本特征等信息。 - 资源的基本信息编辑区与用例的略有不同,名称、说明、输入参数、输出参数。输入参数和输出参数可以填写多个。
- 工具栏包含添加步骤、删除步骤、回放脚本、复制步骤和粘贴步骤。
a) 点击添加步骤展开步骤编辑区,用于新建脚本步骤。
b) 选中任意步骤,点击删除,可删除该步骤。
c) 用例保存后方能进行回放,注意回放前需要填写回放的设备IP,回放时显示调试日志。
d) 选中步骤,点击复制可复制该步骤;点击粘贴,粘贴该步骤。 - 步骤列表为脚本的实际内容,支持单步骤的编辑和删除,可拖动步骤调整步骤顺序。
- 在步骤编辑区,用户可新建或者编辑步骤,需要选择资源池(公共资源、私有资源、类库关键字)填写相关关键字及对应的参数。
a) 为保证关键字的正确性,填写区域支持关键字联想,用户可直接选择联想到的关键字。联想关键字可按路径和名称两种方式显示。
b) 若定义关键字时有说明,鼠标悬停到“?”上可查看该关键字的说明,以便用户掌握使用方法。
c) 步骤描述可填写对该步骤的说明。
d) 输入参数为该关键字的参数,支持输入内容和变量,有默认值的参数自动带入默认值。需要输出信息时可填写输出参数。
e) 点击参数输入栏右侧的输入图标,支持切换输入JSON格式内容。脚本编写界面示意图 资源编写界面示意图 JSON格式输入界面示意图 回放完成示意图 - 接口类库RequestsLibrary的帮助文档链接: https://bulkan.github.io/robotframework-requests/doc/RequestsLibrary.html