news 2026/7/9 12:51:55

关于sdk测试,这些你都知道吗?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
关于sdk测试,这些你都知道吗?

一、sdk demo的质量

目前,sdk demo是小编测试sdk的主要途径,所以sdk demo的质量会直接影响到我们测试的结果。

首先,作为测试用的demo,通常我们不需要它拥有美观的界面以及完全友好的用户体验,但是一定要真正按照实际使用sdk的方式来对sdk进行调用,这是很重要的,否则测试的重点很容易跑偏。

其次,demo是否可以覆盖sdk在实际使用中会用到的全部功能也很重要,这客观影响到我们的测试覆盖度。

再有,demo的设计是否可以满足测试的需求也很重要,比如,要进行性能和稳定性测试的话,demo是否可以实现自动化批量测试,以及是否可以对结果或日志进行保存这些都需要考虑。

最后,demo本身是否会影响到测试的结果也需要考虑,比如demo本身的一些逻辑存在bug,或者本身存在内存泄漏等稳定性问题。这种问题比较普遍,可能经常遇到,对于我们测试sdk可能会产生较大干扰,同时也会影响到测试进度,需要尽可能地减少。

在某些项目中,sdk demo是由开发侧制作并提供的,开发提测sdk的同时已经准备好了demo。这种情况就需要我们对demo的质量做个预先的评估。小编之前就遇到了由于开发提供的demo质量的问题,未完全覆盖到app的调用逻辑,导致sdk集成到app后出现问题的情况,测试sdk demo的时候完全正常,结果app的测试同学却遇到了问题。双方测试和开发排查、沟通半天,最后才查到是sdk的问题,白白浪费了各方不少的时间。所以,拿到demo以后,先简单测试并与开发就一些调用上的细节进行核对,如果发现有哪些地方不满足我们上述所说的一些条件,我们应该及时提出,由双方共同商讨解决方法后及时修改,避免测试中出现隐患。

二、手机app sdk测试对资源情况的监控

不同于之前的智能硬件sdk测试,所用的系统由公司自己控制,我们可以较为方便地对系统进行操作,比如获取root权限或者在sd卡中执行脚本等等,对手机app所用sdk的测试,我们要在不同的手机上进行测试。不同品牌、不同系统的手机,由于厂商的限制,我们有时很难进行像获取root权限这样的操作,也很难在手机内部运行自定义的简易脚本来做各种事情,因此对资源情况的监控,我们就不能放在手机里来做了。

这种情况,我们使用外部监控的方式来对手机中运行程序的资源情况进行监控。

第一种方式,可以把之前放在设备中执行的脚本稍加修改,变成在外部执行,通过adb命令来获取相应的资源情况。比如在windows系统下,我们可以使用一个超简单的bat脚本来实现:

@echo off:LOOPset /p=%date:~0,10%-%time%> log.logadb -s deviceid shell “top -b -n 1 | grep ‘processname’ | grep -v grep” >> log.logping 127.0.0.1 -n 30 >nulgoto LOOP

获取到的日志:

然后就可以像之前一样使用excel等工具绘制曲线图来观察资源占用的变化情况。

第二种方式,我们可以用一些监控工具来实现对于资源的监控。比如android studio、xcode、perfdog等等。最近小编就经常使用perfdog来进行资源监控,这款腾讯公司开发的监控工具使用简单,并且安卓和IOS系统都可以使用,也支持一台电脑同时监控不同系统的多台设备,省时省力。

但目前该工具还存在一些bug,便捷的同时也建议大家不要过度信任该工具,还是要自己多加尝试、使用和观察来避免踩坑。

三、可联网智能设备sdk通过公司网络进行测试

我们已经测试了多款智能设备相关的sdk,其中有一项测试是需要通过网络向设备发送一些数据来进行测试的,这种情况在一般的wifi环境(密码加密或完全公开)下比较容易实现,但对于像搜狗公司这样的、需要web认证的网络条件下就比较麻烦,因为很多智能设备可能无法使用web认证,无法接入公司的wifi网络。像这种情况,经研究,我们可以通过几种方式来解决,作为小经验分享给大家:

1、使用电脑无线网卡创建热点,设备接入。

这种方式比较适合使用笔记本电脑测试的同学,一般直接用笔记本的无线网卡开启热点后,智能设备连到这个热点上,设置好ip后即可从电脑访问设备。用台式机的同学可能需要自备另外的网卡了。

2、使用无线路由器,双方接入。

这种方式比较高效,只要电脑(无线有线均可)和智能设备都连到路由器的wifi上,电脑即可访问到智能设备(这就相当于另外搭建一个无线网络)。如果还需要访问外网和公司网络,可以将路由器的一个端口用来连接公司有线网络,使用dhcp或静态ip的方式均可。

3、使用无线路由器,设备接入,纯路由方式。

这种方式不要求电脑端接入路由器网络,只需要智能设备接入,但实现起来比较复杂。需保证路由器接入公司网络,不要开启NAT,智能设备ip不和路由器和电脑在同一网段,电脑和路由器在同一网段,电脑端设置路由将设备网段流量转发至路由器ip。以上条件应该缺一不可,因为过于复杂,所以不建议使用。

4、使用无线路由器,设备接入,端口转发方式。

这种方式是小编最终所选用的。因为无需对电脑端做任何操作,不用开热点,不用经历断网更不用设置路由,甚至还可以从机房的服务器进行访问。只需将路由器接入公司网络,然后将智能设备所需提供服务的端口在路由器设置个端口映射/转发(DNAT)即可,需注意TCP/UDP协议是否启用。这样从电脑端直接请求路由器ip上映射出来的端口就可以访问到设备指定的端口了。缺点是,如果需要转发不止一个端口或端口是动态的话,不是很好处理。

小结

本文主要介绍了在sdk测试中可能遇到的一些问题和解决的思路,希望能给大家提供一些参考。当然关于sdk的测试还有很多其他的方法和注意事项,欢迎各位同学一起讨论交流,共同进步~

感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/1 16:48:18

Chrome浏览器网页完整截图终极解决方案

Chrome浏览器网页完整截图终极解决方案 【免费下载链接】full-page-screen-capture-chrome-extension One-click full page screen captures in Google Chrome 项目地址: https://gitcode.com/gh_mirrors/fu/full-page-screen-capture-chrome-extension 在日常浏览网页时…

作者头像 李华
网站建设 2026/7/1 9:15:40

【西南交通大学、江西科技师范大学先进电子材料与器件江西省重点实验室主办,有保障 | SPIE出版,同时拥有双刊号,往届均已见刊EI检索】第五届电子信息工程与数据处理国际学术会议(EIEDP 2026)

SPIE出版,同时拥有双刊号 | 往届均已见刊检索,最快会后3个月EI检索! 征稿主题广:计算机、电子通信领域均可投递! 第五届电子信息工程与数据处理国际学术会议(EIEDP 2026) 2026 5th Internati…

作者头像 李华
网站建设 2026/7/1 9:15:44

AMD锐龙处理器深度调校终极指南:SMUDebugTool实战应用

AMD锐龙处理器深度调校终极指南:SMUDebugTool实战应用 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https://gi…

作者头像 李华
网站建设 2026/7/1 9:15:46

MsgViewer:解决MSG邮件文件查看难题的必备工具

MsgViewer:解决MSG邮件文件查看难题的必备工具 【免费下载链接】MsgViewer MsgViewer is email-viewer utility for .msg e-mail messages, implemented in pure Java. MsgViewer works on Windows/Linux/Mac Platforms. Also provides a java api to read mail mes…

作者头像 李华