一文带你读懂sdk测试

软件测试呀 软件测试呀     2022-12-01     813

关键词:

一.什么是SDK

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

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

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

软件开发工具包是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等创建应用软件的开发工具的集合,一般而言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要测什么

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

1) SDK接口和文档

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

2)SDK日志打印

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

3) 程序示例:demo

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

四、SDK测试类型

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

1、功能的测试

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

考虑数据缓存和存储

考虑是否有回调

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

2、兼容性的测试

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

考虑模拟器的支持

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

3、性能方面的测试

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

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

4、稳定性方面的测试

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

5、弱网环境测试

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

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

6、安全性方面的测试

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

五:如何测试

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

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

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

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

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

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

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

最后感谢每一个认真阅读我文章的人,下面这个网盘链接也是我费了几天时间整理的非常全面的,希望也能帮助到有需要的你!

这些资料,对于想转行做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助……

如果你不想一个人野蛮生长,找不到系统的资料,问题得不到帮助,坚持几天便放弃的感受的话,可以点击下方小卡片加入我们群,大家可以一起讨论交流,里面会有各种软件测试资料和技术交流。

敲字不易,如果此文章对你有帮助的话,点个赞收个藏来个关注,给作者一个鼓励。也方便你下次能够快速查找。

自学推荐B站视频:

零基础转行软件测试:38天自学完软件测试,拿到了字节的测试岗offer,堪称B站最好的视频!

自动化测试进阶:已上岸华为,涨薪20K,2022最适合自学的python自动化测试教程,自己花16800买的,无偿分享

从源码入手,一文带你读懂springaop面向切面编程

之前《零基础带你看Spring源码——IOC控制反转》详细讲了Spring容器的初始化和加载的原理,后面《你真的完全了解Java动态代理吗?看这篇就够了》介绍了下JDK的动态代理。基于这两者的实现上,这次来探索下Spring的AOP原理。虽... 查看详情

工业品mro采购网站有哪些优势?一文带你读懂

随着互联网电商的迅速发展,越来越多的工业品企业开始寻求新的突破口,很多MRO商城网站应运而生,这种“互联网+工业”的新型数字化采购模式,能够将数字能力及技术优势贯穿企业管理全流程,让品类... 查看详情

一文带你读懂dockerfile(代码片段)

目录一、概述二、DockerFile构建过程解析(一)Dockerfile内容基础知识(二)Docker执行Dockerfile的大致流程(三)总结三、DockerFile常用保留字指令四、案例(一)自定义镜像mycentosjava8(二)虚... 查看详情

各行各业都在关注的“密评”到底是啥?一文带你读懂!

...:今天我们就来讲讲关于“密评”的那些事儿,一文带你搞懂“密评”!本文分享自华为云社区《各行各业都在关注的“密评”到底是啥?一文带你读懂!》,作者:开天aPaaS小助手。要说2022年各行各... 查看详情

一文带你读懂python中的进程

进程进程(Process)是计算机中的程序关于某数据集合上的一次运行,即正在运行的程序,是系统进行资源分配和调度的基本单位,进程是对正在参考技术A进程进程(Process)是计算机中的程序关于某数据集合上的一次运行,即正... 查看详情

什么是激光雷达?一文带你读懂激光雷达

近年来,随着技术的进步,激光雷达的应用领域也在逐渐扩大,不仅在环保、农业、海洋和测绘等领域发挥了重要作用,在机器人、无人驾驶、智能装备、智能家居等领域也显示出良好的应用前景,再加上国家对这些高新技术的... 查看详情

激光雷达是什么?一文带你读懂激光雷达

 随着人工智能的发展,激光雷达也获得了广泛的关注,在机器人领域,激光雷达可以帮助机器人在未知环境中了解周边地图信息,为后续定位导航提供很好的环境认知能力,帮助机器人实现智能行走。 什么是激光雷达?... 查看详情

微信小程序一文带你读懂云开发(代码片段)

前言         云开发(CloudBase)是一个已经存在了很多年的概念,但在过去未能真正成为主流。然而,由于云和软件即服务的宏观趋势的结合,以及技术的进步,如容器技术Docker和Kubernetes,云开发现在有机... 查看详情

一文带你读懂非结构化稀疏模型压缩和推理优化技术

背景近些年,深度学习正在经历从学术研究领域到工业落地方面的快速转变。一个完备的深度学习落地流程包括:模型设计、模型训练与调优、模型压缩、推理部署,最终成为在各种设备上快速、精准运行的人工智能... 查看详情

一文带你读懂非结构化稀疏模型压缩和推理优化技术

背景近些年,深度学习正在经历从学术研究领域到工业落地方面的快速转变。一个完备的深度学习落地流程包括:模型设计、模型训练与调优、模型压缩、推理部署,最终成为在各种设备上快速、精准运行的人工智能... 查看详情

一文带你读懂,这三个交换机层级的区别和联系。

01第二层交换机OSI参考模型的第二层叫做数据链路层,第二层交换机通过链路层中的MAC地址实现不同端口间的数据交换。第二层交换机主要功能,就包括物理编址、错误校验、帧序列以及数据流控制。因为这是最基本的交... 查看详情

一杯咖啡带你读懂状态机

 状态机的简单介绍最近公司做棋牌的项目,当时还是不理解什么是状态机,当一个项目做完之后,大脑里已经有了一个状态机的概念,所以今天就与大家分享出来,由于本人的技术博浅,有很多地方没有理解通透的地方,请... 查看详情

一文让你读懂网站https证书是什么

谷歌多年来一直致力于推进HTTPS的加密普及,为了营造安全的上网环境,通过改变Chrome用户界面显示取得显著成效。从Chrome80开始不安全的HTTPS页面会直接标记“NotSecure”(不安全)。下面为不了解网站SSL证书的朋友收集了1... 查看详情

顾嘉:5分钟带你读懂《在线》逻辑

互联网成了基础设施,是创新平台;数据成了生产资料,是自然资源;计算成了公共服务,是能源动力。——王坚:《在线》  在我的记忆里,云计算、物联网、大数据是近年来被媒体和产业界炒得最热的几个概念了。... 查看详情

linux-一篇带你读懂curlproxy代理模式(代码片段)

curl是一个很有名的处理网络请求的类Unix工具。出于某种原因,我们进行网络请求,需要设置代理。本文讲全面介绍如何为curl设置代理设置代理参数基本用法-x,--proxy[protocol://]host[:port]设置HTTP代理下面两种设置代理的方式... 查看详情

linux-一篇带你读懂curlproxy代理模式(代码片段)

curl是一个很有名的处理网络请求的类Unix工具。出于某种原因,我们进行网络请求,需要设置代理。本文讲全面介绍如何为curl设置代理设置代理参数基本用法-x,--proxy[protocol://]host[:port]设置HTTP代理下面两种设置代理的方式... 查看详情

带你读懂spring的事务传播行为(代码片段)

点击关注公众号,实用技术文章及时了解来源:blog.csdn.net/xuan_lu/article/details/106006755一、概念首先简单了解一下Spring中事务传播行为是什么?听起来很高端,但是真正用起来的时候,稍有不慎,就会让自己... 查看详情

[含有环境搭建]一篇带你读懂hbase(代码片段)

作者简介:大家好,我是?让我们一起共同进步吧!????个人主页:的csdn博客??系列专栏:??哲学语录:承认自己的无知,乃是开启智慧的大门??如果觉得博主的文章还不错的话,请点赞??+收藏+留言??... 查看详情