自动化工具 请问一下大家 SDK 都是怎么测试的呢?比如 Android 的 ios 的,c++ 的等等,除了搞个 App demo,还有其他什么办法吗?

TD · 2022年02月17日 · 最后由 TD 回复于 2022年02月21日 · 4823 次阅读

有没有 SDK 测试的解决方案可以参考一下的,我们的 SDK 其他 App 接入会有一些库冲突什么的,导致 App 崩溃啥的,这个要怎么测试呢?或者测试方能怎么做?我们现在单纯的 demo 感觉也测不到这些,然后做 App demo 也比较局限,开发工作量比较大。

最佳回复
  • 必备:

    • 实现宿主 demo,包装 SDK 进去单个功能做测试(人肉)
    • SDK 层面函数级别的单测
    • SDK 层面暴露测试接口,针对宿主 demo 做 UI 自动化更深入的测试
    • SDK 请求的服务端接口,对这些接口做自动化
  • 其他:

    • SDK 接入使用规范(防止接入方用预料外的奇怪姿势使用)
  • 高级:

    • 静态检测能力(比如楼主提到的库依赖冲突,宿主和 SDK 依赖了同一个库的不同版本存在冲突,需要 case by case)
    • SDK 性能:宿主资源占用、极端场景
    • 对被请求服务端的关注度
共收到 8 条回复 时间 点赞

1、demo 质量可以做高点,参数做灵活,可测更多问题
2、android sdk 可以用 as 接口测试框架测试,类似 android 单元测试,验证逻辑
3、接入崩溃,按 android 的专项内存 crash 来测

自己写个页面调用一下 SDK 试试,百度一下基本的语法 按照 SDK 提供的文档写一下就行

写个 C++ DEMO....

关于接入库的冲突问题,我们之前的做法是这样的:

  1. 调研一下 SDK 用户的主流框架和流行的库有哪些,尝试在 demo 中加入,提前进行兼容性测试。
  2. 自动收集闪退日志,定时分析。

通用反射工具,转成 http api 来测试😀

常规做法是模拟真实用户使用的方式,即开发 demo 集成 SDK,这个涉及到代码开发的话,那么可以做的方法很多,就看你如何去规划这个测试了,包含如何执行、结果如何反馈、后续如何自动化、如何后向兼容。

  • 必备:

    • 实现宿主 demo,包装 SDK 进去单个功能做测试(人肉)
    • SDK 层面函数级别的单测
    • SDK 层面暴露测试接口,针对宿主 demo 做 UI 自动化更深入的测试
    • SDK 请求的服务端接口,对这些接口做自动化
  • 其他:

    • SDK 接入使用规范(防止接入方用预料外的奇怪姿势使用)
  • 高级:

    • 静态检测能力(比如楼主提到的库依赖冲突,宿主和 SDK 依赖了同一个库的不同版本存在冲突,需要 case by case)
    • SDK 性能:宿主资源占用、极端场景
    • 对被请求服务端的关注度
TD #2 · 2022年02月21日 Author
甬力君 回复

还想请教一下反射工具是怎么弄的,这个有具体的资料么😀

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册