1.首先,我们来了解SDK是什么?

官方一些的回答,客户端SDK(英文全程:Software Development Kit),它是为第三方开发者提供的软件工具包。软件开发工具包,一般是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。

现实工作环境中,SDK更多的是(Second Development Kit)二次开发工具包,这类SDK其实就是把要单独接入的应用的功能从应用中剥离出来,可以提供给所有其它应用使用的公共组件,还能在此基础上进行重构和迭代,降低工作的复杂度、节约了成本。

2.SDK和API不一样吗?为什么?

SDK是一种开发集成工具环境,而API简而言之就是数据接口。我们可以在SDK环境下调用API的数据。所以SDK包含了API的定义,API(Application Programming Interface,应用程序接口)是一种桥梁,是一种数据交互的规范,而SDK可以包含该功能和规范。但是SDK不单单包含API,还可以包含其它应用性的功能,因为它是一个软件工具包。

通俗而言,API就是在前端和后端之间架起了一座交流的桥梁,想要通过桥梁还得有协定的通关密码。前端请求的数据通过桥梁也就是接口传递给后端,后端将处理完的数据再通过桥梁(接口)回馈给前端。

而SDK是集合了某一类软件的相关文档、范例和工具的集合,当某个产品想实现某功能时,找到SDK直接嵌入应用即可使用,就不需要重复开发了。

3.那SDK测试什么呢?

客户端SDK的测试,就是对提供给开发者的工具包里面的小小应用进行的测试。借鉴应用的测试内容,SDK的测试内容就涵盖了:SDK接口和文档的测试、SDK日志的测试、DEMO或解决方案的测试、SDK附带输出的测试(比如一些UI Kit)等内容。

4.SDK测试类型的分布又有那些呢?

根据设计需求和开发平台应用场合的不同,测试类型也不同,今天着重讲功能性的测试,测试内容包括:

接口参数测试,对于相应的接口文档进行请求和参数的验证,并能在接口协议的要求下有正确的返回。

应用场景的测试,不同的SDK针对的开发功能和作用不同,首先要进行设计需求的功能验证测试,保证功能都正确实现了,并且有正确的返回。

还要考虑数据的缓存、存储和调用,要求成功、或失败的处理结果与预期一致。并且还要求具有容错的处理,能将一些异常抓取住,将bug拦在自己门内。

要做好功能测试就要做足充分的需要测试准备,首先熟悉业务流程,结合API文档和开发指南,理清接口的使用场景及其调用方式。其次熟悉SDK协议,理解协议字段的涵义,及服务器的处理逻辑。再者熟悉接口或协议的返回码,分析对应场景。最后了解开发的细节,弄懂设计实现的逻辑。

想要了解更多软件测试知识,可以关注优就业官网(www.ujiuye.com)

【软件测试基础知识】SDK是什么?相关推荐

  1. 软件工程与软件测试基础知识_这是我在软件工程工作九个月中学到的知识

    软件工程与软件测试基础知识 I've been working for about nine months at Dexter as a software developer. I wrote a b ...

  2. 软件测试基础知识大全【乐搏TestPRO】

    在很多人的认知里,软件测试入门门槛低,简单易学.确实,软件测试基础知识更偏向于理论方法的学习,及部分常用工具的学习. 接下来的70个基础知识讲解,弄明白后这些问题后,软件测试入门也基本掌握了.本篇共分 ...

  3. 软件测试基础知识面试题目(25题英文题目)

    软件测试基础知识面试题目(25题英文题目) 1. Verification is:  a. Checking that we are building the right system b. Chec ...

  4. fiddler模拟服务器响应,2020军队文职计算机知识:【软件测试基础知识】如何使用fiddler模拟接口服务器...

    [导语]2020军队文职计算机知识:[软件测试基础知识]如何使用fiddler模拟接口服务器已发布,为助力各位考生做好2020年军队文职招聘考试准备,中公部队文职考试网提供了军队文职专业科目和综合辅导 ...

  5. 【软考软件评测师】软件测试基础知识

    [软考软件评测师]软件测试基础知识 软件测试基础知识 [软考软件评测师]软件测试基础知识 一. 软件测试的概念 1)软件测试定义的发展 2)软件测试的目的 3)软件测试的对象 4)对于测试组织者和实施 ...

  6. 软件测试基础知识——适合初学者

    软件测试基本概念 1.软件=程序+文档,软件测试=程序测试+文档测试. "程序"是指能够实现某种功能的指令的集合,"文档"是指软件在开发.使用和维护过程中产生的 ...

  7. 软件测试基础知识【归纳】

    (一)软件测试的定义 在规定的条件下对程序进行操作,以发现程序的错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程. 1 规定条件 --> 测试用例 2 发现程序的错误 --> 找 ...

  8. 01.软件测试基础知识整合

    软件测试基础 前言 一.什么是软件测试 二.软件测试的目的 三.软件测试的基本流程 四.测试分类 五.测试用例 1.什么是测试用例 2.测试用例的重要性 3.测试用例的设计方法 4.测试点分析 5.如 ...

  9. 软件测试基础知识总结(一)

    第一部分:软件评测知识 1.  软件质量与软件测试 软件测试:在规定条件下对程序进行操作,以发现错误,对软件质量进行评估,包括对软件形成过程的文档.数据以及程序进行测试 软件质量:软件特性的总和,软件 ...

  10. 软件测试基础知识-问答

    说明:本文以问答方式组织,分享一些软件测试的基础知识(有部分可能来自网络).如有不正确之处请指出,共同学习. 什么是软件测试? 答:依据软件需求规格和测试用例,使用人工和自动化的手段,来测试软件系统的 ...

最新文章

  1. struts2注解(转)
  2. Cuckoo hash算法分析——其根本思想和bloom filter一致 增加hash函数来解决碰撞 节省了空间但代价是查找次数增加...
  3. (精简)Spring框架的IoC(替代工厂类实现方法)和AOP(定义规则,约定大于配置)
  4. vscode快捷键大全
  5. Gevent简明教程
  6. filezilla 设置服务器_java项目部署到linux服务器,微信小程序后台springboot项目部署到腾讯云服务器(图文详解)...
  7. mybatis-物理翻页
  8. “工业互联网平台“将成为工业制造企业的标配
  9. Zookeeper----基本原理
  10. java的requestmapping_SpringMVC RequestMapping 详解
  11. Infragistics NetAdvantage UltraGrid的使用
  12. (node:62099) ExperimentalWarning: The fs.promises API is experimental
  13. Ubuntu16.04安装卸载MongoDB
  14. 玩转oracle视频教程(四)百度云
  15. 中南大学计算机学院研究生录取分数线,中南大学研究生录取分数线
  16. 小兔子在终端给大家拜年啦
  17. 神操作 用 Python 操作 xmind 绘制思维导图
  18. 贴片电解电容正负极区分
  19. 微电子电路——反相器网表详解
  20. 微服务架构服务容错设计分析

热门文章

  1. compiled python file_YouCompleteMe安装的问题requires Vim compiled with Python (2.6+ or 3.3+) support...
  2. Unity Recorder屏幕录制问题
  3. lempel ziv matlab,精讲Lempel-Ziv压缩算法
  4. 构建分布式系统——技术考量
  5. 进化的系统需要进化的系统工程
  6. 华为企业云如何让 DevOps 真正落地?
  7. 【python 百度指数抓取】python 模拟登陆百度指数,图像识别百度指数
  8. C1任务01 植物大战僵尸存档修改
  9. 自己写的一个简单的Android终端模拟器
  10. 2019 计蒜之道 初赛 第一场(A. 商汤的AI伴游小精灵)