“阅读本文大概需要9分钟。
你好,我是测试蔡坨坨。
众所周知,在云产品和SaaS蓬勃发展的当下,企业中有许多系统和环节都是依赖于第三方提供的服务或应用,而不必自己去搭建和实现,从而节省人力和物力,避免重复造轮子。
第三方应用可以通过厂商提供的API或SDK等形式集成。
对于测试同学来说,API测试,也就是所谓的接口测试,应该是再熟悉不过了,但对于SDK的了解以及测试可能就没有API那么熟悉了。
所以,今天我们就来聊一聊什么是SDK,以及SDK如何测试。
什么是SDK
SDK的全称是Software Development Kit(软件开发工具包),通常包括SDK接口、开发文档和Demo示例等。
API的全称是Application Program Interface(应用程序接口),就是软件系统不同组成部分衔接的约定。
API和SDK的区别
常见的API形式有http协议请求接口、websocket协议请求接口等,而SDK可能是xxx.jar、xxx.war、xxx.py、xxx.framework、xxx.a、xxx.aar、xxx.so等。
通俗地说,API可以比作房门钥匙,在一个房子里,每个房间有不同的用途和资源,想要获取相应房间的资源,我们需要先用钥匙打开房间门,比如去书房拿书、去卧室拿枕头,都需要先找到相应的房间钥匙,而拿书和拿枕头的过程,就是调用API的过程,也就是钥匙开门的过程。
SDK相当于一个大的工具包,把这些钥匙都串在一块儿,将API集合到一起,拥有SDK,便可以在该房子里畅通无阻,想要哪个房间的资源,就调用相应的方法。
两者的区别就是,API是一个确定的功能,明确了它的作用,而SDK是很多方法的集合体,只要引入SDK工具包,无论想实现什么,SDK里总有能实现的方法。
简单来说,SDK=放着你想要的软件功能的工具包,API=SDK上唯一的接口。
API举栗:
http接口文档:
调用:
调用http接口的方式有很多,比如postman、apifox、jmeter、python requests、java httpclient等。
SDK举栗:
腾讯云短信xxx.py包:
调用:
通过编写代码调用SDK工具包。
SDK层级结构及测试
如果把SDK想象成一个洋葱,你认为它是一个什么样的层级结构?
从SDK的层级体系来看,其实是一个从内到外、从白盒到黑盒过渡的一个测试体系。
Demo阶段的SDK如何测试
Demo阶段的SDK测试,简单来说就是对提供给其他开发者的工具包里面的内容进行测试。
而SDK通常包含SDK接口、开发文档和Demo示例等。
因此,测试的主要内容就有SDK接口文档、日志、Demo。
测试类型有功能测试、性能测试、兼容性测试、稳定性测试、网络相关测试、安全性测试等。
并且最终还可以实现SDK的自动化测试。
SDK接口文档测试
主要检查文档是否完整、正确、清晰,比如:接入指南是否包含了环境依赖说明、集成方法说明、调用方法说明,接口文档的方法、参数名称、参数类型、参数描述、是否必填、示例、返回值等。
日志测试
对开发者来说,SDK接口里面的具体实现都是透明的,当上层调用遇到问题时,只能依赖SDK打印的日志来定位分析,所以日志是否完备,是否有助于解决问题,对应用开发者和SDK提供方来说都很重要。
Demo测试
Demo是SDK提供方用来演示如何调用接口实现具体的功能,可以让其他开发者直观地感受SDK的接入效果,可以较明确的知道接入这个SDK做出来的产品效果如何,因此也是我们测试的重点,应该尽可能多的覆盖各种业务场景。
功能测试
保证SDK接口功能的正确性和完备性,客户端SDK接口测试跟服务端接口测试类似,包括场景覆盖和接口参数覆盖,主要测试各种参数组合下的返回值,数据是否缓存与存储,是否有回调,对于请求成功或失败都能按预期进行处理。
性能测试
保证SDK接口满足特定的性能需求,比如:资源占用、响应时间等。
兼容性测试
保证SDK兼容特定的设备平台,并与其他软件兼容。
稳定性测试
测试业务场景在一定压力下,持续运行一段时间,接口功能和设备资源占用有无异常。
网络相关测试
不同网络类型,不同网络环境下,SDK接口都能较好的处理,比如弱网测试。
安全性测试
对隐私数据的保护,访问权限的控制,用户服务的鉴权等。
自动化测试
与接口自动化测试类似,我们可以将Demo测试写成自动化脚本的形式,比如使用TetsNG框架并持续集成到Jenkins,方便快速回归。
以上,完。
脚踏实地,仰望星空,和坨坨一起学习软件测试,升职加薪!
到此这篇sdk测试是什么测试(sdk的测试方法)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/te-aq/72509.html