【SIP】OPEN API测试用例之正交验证法

简介:
  我在上篇关于OPEN API测试用例编写方法中写到,由于OPEN API是相对于设计层面的测试,所以测试用例的编写方法是多种多样的,此所谓不管黑猫白猫能抓老鼠就是好猫。本次在SIP5.4的测试中更是印证了这个道理。在SIP5.4的测试中我采用了正交试验法。
    原始需求如下:SIP对用户访问的权限做了新的定义。对ISV的应用(APP)做了等级划分。规定了属于某个等级(APP_LEVEL)的应用只能访问这个等级管辖的API群,而且受该APP_LEVEL的访问频度约束。
    新增概念:
    API群:指由ISP提供的所有服务+需要单独增添的服务-ISP服务中不可以访问的服务
    需求分析。
    从原始需求中,我们可以提炼出原始需求其实分为两个部分的内容。
1.     应用对API的访问是否被APP_LEVEL授权的机制。
2.     授权的应用是否被频度控制正确的控制。
再来分析授权机制的影响因素,主要有以下几点
1.     由于主要是通过APP_LEVEL中包含API群的情况来约束对某个API的访问权限。
所以群的因素(A群的个数,B是否在群中)影响测试的结果。
2.     由API群本身组成的机制,又可以得出实际上访问授权机制还受以下的因素影响
C. ISP提供的所有服务(ISPS);D.需要单独添增的服务(INCLUDE_APINAMES);F. 需求排除的服务(EXCLUDE_APINAMES)
我们再深入分析,发现测试的步骤其实都非常简单,不影响测试的结果。也就是说测试结果只和测试的前置条件A,B,C,D,E,F相关。而且条件直接的组合可以产生很多种结果。为此我们想到了正交验证分析法(方法本身的定义详见转载),实战只是采用了它的思想并未完全遵循理论。实际测试用例中把第一点和第二点也分开了测试。实战测试用例如下。
 
授权测试用例1
授权检查测试用例2
 
  由于SIP的频度控制,之前就有机制。所以必须测试和之前机制的兼容性。这里先介绍一下本次APP_LEVELAPI访问频度的控制和之前的频度控制的关系。如下:应用定制API频率(SIP_CUSTOM_CONFIG本次新增)优先于 API设置频率 (SIP_API原有需求)优先于 默认应用级别频率 (SIP_APP_LEVEL本次新增)优先于 系统默认频率(配置文件原有需求)。
 

 在文章的结尾,感谢一下我们公司的文初同学对本次测试用例的建议和对测试工作一贯的支持!


 

本文转自elbertchen 51CTO博客,原文链接:http://blog.51cto.com/linkyou/282654,如需转载请自行联系原作者
相关文章
|
2天前
|
Web App开发 敏捷开发 测试技术
自动化测试之美:使用Selenium WebDriver进行网页功能验证
【8月更文挑战第29天】在数字时代,软件质量是企业竞争力的关键。本文将深入探讨如何通过Selenium WebDriver实现自动化测试,确保网页应用的可靠性和性能。我们将从基础设置到编写测试用例,逐步引导读者掌握这一强大的测试工具,同时分享实战经验,让测试不再是开发的负担,而是质量保证的利器。
|
2天前
|
SQL 安全 测试技术
软件测试的哲学:探索、验证与持续改进
【8月更文挑战第29天】本文将深入探讨软件测试的核心理念,从测试的本质和目的出发,阐述测试不仅是技术活动,更是一种思考方式。我们将一起探索如何通过测试来验证软件的正确性,确保其满足用户需求,并在此基础上不断改进。文章将分享实用的测试策略和方法,包括代码示例,旨在帮助读者更好地理解和实践软件测试的艺术。
|
3天前
|
机器学习/深度学习
神经网络与深度学习---验证集(测试集)准确率高于训练集准确率的原因
本文分析了神经网络中验证集(测试集)准确率高于训练集准确率的四个可能原因,包括数据集大小和分布不均、模型正则化过度、批处理后准确率计算时机不同,以及训练集预处理过度导致分布变化。
|
7天前
|
JSON 算法 API
【Azure API 管理】APIM 配置Validate-JWT策略,验证RS256非对称(公钥/私钥)加密的Token
【Azure API 管理】APIM 配置Validate-JWT策略,验证RS256非对称(公钥/私钥)加密的Token
|
7天前
|
存储 安全 API
【Azure API 管理】在APIM中使用客户端证书验证API的请求,但是一直提示错误"No client certificate received."
【Azure API 管理】在APIM中使用客户端证书验证API的请求,但是一直提示错误"No client certificate received."
|
10天前
|
监控 数据可视化 测试技术
Apifox 如何进行 API 自动化测试?经验之谈
选择 Apifox 来进行 API 自动化测试能够确保每次迭代的质量,避免引入新的 bug,还要实现自动化测试、定时测试、产品监控、可视化测试、持续集成等,帮助提高效率,通过设计和执行有针对性的测试用例,来全面验证产品功能,确保软件系统能够正常运行,减少上线后的问题。
Apifox 如何进行 API 自动化测试?经验之谈
|
16天前
|
测试技术
单元测试问题之在单元测试中,方法的返回值或异常,如何验证
单元测试问题之在单元测试中,方法的返回值或异常,如何验证
|
17天前
|
安全 测试技术 API
API 测试是什么?如何进行 API 测试?
在互联网时代,API已成为软件间交互的关键。API测试验证API是否按预期工作,通过检查响应来确保其正确性、可靠性和安全性。与UI测试不同,API测试聚焦底层功能,有助于早期发现并修复缺陷。它能验证软件质量、加速开发周期、促进微服务架构并支持持续集成/交付。常见的测试类型包括单元测试、功能测试、集成测试、性能测试、安全测试及回归测试。使用自动化工具如Apifox能提高测试效率,支持可视化编排、零代码配置流程条件、生成详细测试报告及快速性能测试,从而确保API质量并提升用户体验。
API
7 1
|
24天前
|
测试技术 API
使用wrk对api接口进行性能测试
使用wrk对api接口进行性能测试

热门文章

最新文章

下一篇
云函数