API测试(或WebService测试)在软件测试中变得越来越重要。根据谷歌趋势报告,过去五年来,行业内对API测试的兴趣一直在增加。这种趋势在一定程度上表明API测试的需求变得更加普遍。测试API或WebService不再仅仅由原来的开发人员执行,在独立的测试团队中,也是非常常见的一部分工作了。
本教程将演示如何快捷的使用Katalon Studio从头开始创建一个API / WebService测试(以下简称为API测试)。
在开始进行API测试之前,我们需要先了解一些关于Katalon Studio中关于API测试对象的基本术语。
Test Case:
这是Katalon Studio项目结构中最重要的概念之一,测试用例集合中列出了用户存储的所有测试用例。
Object Repository:
测试对象库是用来存储所有测试对象的。
在UI测试中,测试对象是具有指定定位器的Web元素,Web Driver在测试执行期间使用这些定位器来定位Web元素。
在API 测试中,测试对象指的是具有URL(域名或IP地址)和一些必要信息(如methods, authorization, body, parameters等)的请求函数,测试执行期间rest-client会使用这些信息去发送请求。
Request:
在API 测试时,Request指的是客户端向服务端的一次请求。
在一个Request中,URL和method是必需的信息,而authorization, body和 parameters是可选的,并且取决于请求类型。
在Katalon Studio中,请求存储在Object Repository中,可以从任何测试用例的步骤中调用。
Response:
一个响应,就是服务端对客户端请求返回的数据。典型的响应包含Headers,Body以及Code(响应代码)等信息。
在Katalon Studio中,响应存储在Object Repository(请求级别)或任何测试用例的步骤中。目前,可以在每个单独的测试用例中验证响应。
使用Katalon Studio从头开始创建API测试用例
第1步:创建一个Request
右键单击Object Repository,在New子菜单下选择Web Service Request,打开Web Service Request对话框。
将信息输入到新的“ Web Service Request”对话框中
Name: 请求名称,用于指定请求的名称。没有特殊的命名规则。但是强烈建议定义的名称是可读的,最好能够表达出请求的目的。
Request Type: 请求类型,在Katalon Studio中,Web服务请求可以是RESTful或SOAP。由于RESTful变得越来越流行,因此在对话框中默认选择它。
URL: 请求的具体地址
Description: 如果需要,可以填写有关请求的更多备注信息。
填写完成所有信息后,将在单击“OK”按钮,就创建了一个Request。
第2步:设置Request
(1)第一步中创建的Request。
(2)请求的方法,如果请求类型是RESTful,则可以选择以下方法之一:GET,PUT,POST,DELETE。
(3)请求的URL,可以在创建请求后随时更新。
(4)授权设置,用于配置连接服务端的授权。Basic和OAuth 1.0是两种最常见的授权方法。
Basic: 需要设置有效的用户名和密码
OAuth 1.0: 需要设置表单中要求的所有配置
注意:授权设置完成后,需单击“Update to HTTP Header”,使配置生效。
(5) HTTP Header配置。
(6)组织用例集的文件夹结构。
被测应用程序通常有数百种服务,因此拥有良好的组织非常重要。在Katalon Studio中,强烈建议使用文件夹结构按路径、功能和方法对Web服务进行分组。
第3步:Smoke(冒烟测试)
点击发送按钮,即可发送请求并快速验证响应。
(1)发送按钮,单击发送请求。
(2)Status: 请求的响应代码。代码反映了请求的状态,详细了解响应代码。
(3)Elapsed: 从请求到获取响应所需的时间。
(4)Size: 响应数据的大小。
(5)Body / Header: 响应数据的Body和Header信息。
(6)显示格式,Katalon Studio将自动选择漂亮模式以正确格式显示数据。目前,它支持JSON,XML,HTML,JavaScript数据类型。
步骤4:创建测试用例
前3个步骤演示了如何在Object Repository创建Request并进行冒烟测试,此步骤将带你创建一个测试用例。
(1)创建一个具有可读名称的测试用例。强烈建议测试用例名称简要描述测试场景(测试目的)。
(2)从测试用例编辑器中,选择“Add - > Web Service Keyword”,添加新步骤。
(1)在项目下拉列表中,选择“Send Request”关键字
(2)单击同一行中的Object cell打开“Test Object Input”对话框
(3)从“Object Type”列表中选择“Test Object”
(4)选择我们前面创建的Request
第5步:添加验证步骤
此步骤将指导你如何将验证添加到测试用例中。
(1) 上一步中已经添加的Request。
(2)为了验证请求返回的内容,我们需要指定请求的输出。只需在Output中输入稍后使用的变量名称即可,例如response。
(3)测试用例的步骤2和步骤3用于验证。与“Send Request”类似的方式添加。步骤2验证响应代码(如果请求成功发送,则为200)。
(4)验证响应代码是否为200。
(5)使用jsonpath和期望值验证响应内容。
第6步:执行测试用例
执行API测试用例与执行UI功能测试用例完全相同。但是,在API测试中,不会使用到浏览器。
恭喜!通过以上6个简单的步骤,现在已经成功地从零开始创建了一个简单的API测试。
即刻开始你的Katalon之旅吧。
Notes:
Source code:https://github.com/katalon-studio-samples/jira-api-tests
Project: Jira API
详情查阅官方原文,搬运过程中若词句有不当之处,还望见谅。