张小白的自动化测试工具实践(2) 使用devcloud进行华为云API的接口测试
大名鼎鼎的devcloud工具对自动化测试的支持情况怎么样呢?
让我们来试一下吧:
简单点,在Scrum项目中先定义一个需求规划:
如上图所示,Epic是全面测试(临时起的名字),Feature是API Explorer测试,Story是TestListServerBlockDevices的测试。Task我们就不用建了。因为我们不是开发,暂时用不着这块。
点击”更多“菜单中的测试-》测试计划,点击新建:
下一步:选择接口测试
点击确定:
测试计划建好了。我们再点击上面测试计划执行结果中的 需求Sheet,然后关联前面我们建好了需求规划,选择最后一个story:
点击确定,将测试计划跟需求做好关联。
关联后的结果如上图所示。
接着,我们点击 测试-》测试-》测试设计按钮,进入用例库:
点击接口测试,再点击新建按钮,进入新建接口测试向导:
如图填上相关测试内容,点击保存或保存并编写脚本,进入以下界面:
点击URL请求。然后根据前面postman或者restAssured的参数填入以下内容:
点击保存后,可以点击 右上角的 黑三角测试一下:
上图是测试成功的一个结果。这个时候可以点击”查看结果“
点击右边的结果列,可以查看结果的详情:
这就是通过devcloud进行接口测试的基本过程。
当然,我们也可以加一个反案例:TestListServerBlockDevices-Test2
具体过程跟前面一样,仅仅贴图示意下:
新建接口测试并建立需求关联:
保存并编写脚本:故意将请求头的X-Auth-Token写成 ERROR
保存,执行:
查看结果:
可见响应码是401,而且错误信息如下:
{ "error_msg": "Incorrect IAM authentication information: decrypt token fail", "error_code": "APIGW.0301", "request_id": "a3be05a3fb0ad4f2f207f320839e124b" }
当然,我们也可以看到,案例1和案例2,一个期待一个正确的结果,一个期待一个错误的结果。现在两个都是成功。对吗?肯定还是配置缺了点什么。。。我们来看看测试脚本中的“检查点”吧。
检查点的意思就是,我想看看响应是否符合我的预期,这跟 前面RestAssured里面的断言部分有点像。
让我们配置下,Test1返回码是200是正确返回。Test2返回码不是200,或者是401是正确返回。这样子配置:
重新做两个案例的测试:
我们可以看到,确实测试案例做了响应码的检查。因为现在API本身没问题。我们来制造一个问题,我们将响应码改为402认为是成功。
重新测试,看红色的错误出现了:
再点击查看结果:
可见devcloud告诉你,结果跟预期的不一致。此次测试失败。当然,这里的检查点除了响应码,还可以对响应报文的响应头,响应体和变量做更详尽的判断。比如使用正则表达式等等。这里就暂时不细说了。
好了,笔者用生动的实例讲解了使用devcloud进行华为云API接口测试的具体过程。大家是不是觉得这块相比,跟Postman,以及TestNG+RestAssured的组合一样,都非常方便呢?其实API测试不仅仅局限于华为云的API,我们自己只要是支持Rest风格的接口,都是可以按照这样的方法进行测试的。只不过如果是使用devcloud进行接口测试,你需要把你的接口公布在互联网上,postman和TestNG+RestAssured倒是无此限制。所以,从适用范围上来看,TestNG+RestAssured也是有其丰富的实践场景的。
(全文完,谢谢阅读)
- 点赞
- 收藏
- 关注作者
评论(0)