千锋教育-做有情怀、有良心、有品质的职业教育机构

当前位置:首页  >  IT面试题  >  软件测试面试题  >  正文

什么是SDK测试

来源:千锋教育
发布时间:2022-09-26 16:00:15
分享

  一.什么是SDK

  SDK,全称:software development kit, 软件开发工具包。

什么是SDK测试

  软件开发工具包一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。

  软件开发工具广义上指辅助开发某一类软件的相关文档、范例和工具的集合。

  软件开发工具包是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等创建应用软件的开发工具的集合,一般而言SDK即开发Windows平台下的应用程序所使用的SDK。它可以简单的为某个程序设计语言提供应用程序接口API的一些文件,但也可能包括能与某种嵌入式系统通讯的复杂的硬件。一般的工具包括用于调试和其他用途的实用工具。SDK还经常包括示例代码、支持性的技术注解或者其他的为基本参考资料澄清疑点的支持文档。

  客户端SDK是为第三方开发者提供的软件开发工具包,包括SDK接口、接入文档、以及demo等。

  可以在任何第三方应用中集成,使用方便。

  二:SDK和API的区别

  sdk和api的区别有以下几点:

  1、组成不同:

  sdk软件开发工具包括广义上指辅助开发某一类软件的相关文档、范例和工具的集合。API(应用程序接口)是一些预先定义的函数,或指软件系统不同组成部分衔接的约定。

  2、用途不同:

  api目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。软件开发工具包一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具。

  3、内容不同:

  为了使用API函数,就要有跟API所对应的 .h和 .lib文件,而SDK正是提供了一整套开发Windows应用程序所需的相关文件、范例和工具的“工具包”。SDK包含了使用API的必需资料,所以也常把仅使用API来编写Windows应用程序的开发方式叫作“SDK编程”。

  三、SDK要测什么

  1、客户端SDK测试的对象

  客户端SDK测试,就是对提供给开发者工具包里面的内容进行测试,因此测试的主要内容有:

  1) SDK接口和文档

  SDK接口是测试的主要对象,也是核心的内容。

  2)SDK日志打印

  对开发者来说,SDK接口里面的具体实现是透明的,当上层调用时遇到问题,可以依赖SDK打印的日志来定位分析。所以SDK日志是否完备,有助于问题的顺利解决,对应用开发者、测试人员、SDK提供方来说都很重要。

  3) 程序示例:demo

  demo是SDK提供方用来展示如何调用接口实现具体的功能,也可以作为开发者直观感受SDK接入的效果

  四、SDK测试类型

  根据需求和开发平台不同,会有以下常见的测试类型:

  功能的测试

  主要是场景覆盖和接口参数覆盖。主要测试各种参数下组合下的返回值。

  考虑数据缓存和存储

  考虑是否有回调

  考虑对请求成功、或失败的处理结果与预期一致

  兼容性的测试

  根据产品需求是市场排行,确保兼容选取的设备机型、版本、分辨率等,并兼容其他软件

  考虑模拟器的支持

  覆盖多平台的,还要考虑多端消息数据包互通

  性能方面的测试

  满足特定的性能指标(CPU、内存、耗电量、流量等)

  特定场景性能:比如登录需要同步大量的数据包和离线消息,需要考虑对这些数据包的解析和本地储存的性能

  稳定性方面的测试

  业务场景在一定压力下,持续运行一段时间,接口功能和设备资源占有无异常。

  弱网环境测试

  对弱网,及其他不同类型网络和不同网络环境,SDK接口均应有较好的处理

  对比依据是新老版本、竞品效果

  安全性方面的测试

  隐私数据的保护、访问权限控制、用户服务鉴权等

  五:如何测试

  1、了解业务流程,确定开放给开发者都有哪些接口

  2、了解SDK用到的所有协议,每个协议中字段的意义和作用以及server端处理逻辑

  3、接口要校验输入参数各种输入情况是否能正确处理,返回值的正确性,是否有数据缓存到本地,检查是否有回调,如果有对于请求成功、请求失败(包括无网络、服务器返回非200错误代码)是否都有调用

  4、测试中对每个请求都应该抓包测试,查看请求的字段、参数值、返回值是否正确

  5、对于协议中必传字段,SDK中是否校验为空的情况

  6、查看是否存在多发、少发请求的情况

  7、对于异步请求的结果在其他地方(A类中)会用到的情况,检查是否存在网络较慢情况下,未完成请求数据为空时A类就用到数据

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

相关推荐

  • 性能测试流程 一般而言,被测对象的性能需求,会在用户需求规格说明说中给出,比如单位时间内的访问量达到多少、业务响应时间不超过多少、业务成功率不低于多少、硬件资源消耗应该在一个合理的范围内等,性能指标应以量化数据给出,对于一个规范的产品,产品团队会给出如下的性能要求
  • 什么是SDK测试 软件开发工具包是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等创建应用软件的开发工具的集合,一般而言SDK即开发Windows平台下的应用程序所使用的SDK。它可以简单的为某个程序设计语言提供应用程序接口API的一些文件,但也可能包括能与某种嵌入式系统通讯的复杂的硬件。
  • 手机app出现问题如何定位 一.后端接口返回数据错误 1.1 引起后端接口数据错误的原因: -未成功解析接口返回值 -获取不到参数 -参数类型不对导致代码报错 1.2 这类问题来源主要有: -历史遗留数据 -网络问题导致接口超时或漏了数组元素 -前后台没有统一参数类型标准
  • 常见的数据库面试题分享 1、内连接  内连接,如果两个表的相关字段相匹配,就从这两个表中提取数据并组合成新的表  2、左连接  左边的表为主表,右边的表与左边的表进行相关联的查询,左边的表所有数据都返回,右边的表只有和左边的表数据相匹配的才返回。
  • 测试人必备的能力 其实呢软件测试工程师就把理解为产品体验师,先帮用户感受一下这个产品的使用,看看有没有什么问题。简单地说,就是为了找bug,提高软件质量的。
  • 装饰器@pytest.mark.usefixtures()叠加使用 装饰器 @pytest.mark.usefixtures()叠加使用  如果一个方法或者一个class用例想要同时调用多个fixture,又应该怎么做呢。这个时候可以使用装饰器 @pytest.mark.usefixtures()进行叠加使用