问答 请教各位大神,类似 keep 运动轨迹的功能如何进行测试?

HH小花 · 2024年01月17日 · 最后由 slink 回复于 2024年01月27日 · 7944 次阅读

请教各位大神,类似 keep 运动轨迹的功能如何进行测试?
有没有对应的模拟工具或者特定的方法论

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 7 条回复 时间 点赞

以下是对类似 Keep 运动轨迹功能进行详细测试的步骤及可能使用的工具:

  1. 单元测试

    • 对处理定位数据、计算速度、距离、消耗卡路里等算法编写单元测试用例,确保输入不同经纬度坐标序列时,输出的距离、时间、速度计算结果准确无误。
  2. 模拟 GPS 信号工具

    • 使用如 Robolectric(Android)或 Xcode 自带的 Simulator(iOS)中的模拟定位服务来生成不同的运动轨迹场景。
    • 在 Android 设备上,可以使用LocationManager.addTestProvider()API 设置模拟 GPS 提供者,并通过setTestProviderLocation()更新模拟位置信息。
    • 对于 iOS 设备,在模拟器中可直接修改模拟位置,或者在真机调试时利用 Core Location 框架提供的 CLLocationManager 的 simulateLocation(_:) 方法模拟 GPS 数据。
  3. 集成测试

    • 设计一系列模拟轨迹场景,比如:直线路径、环形路径、折返路径、室内外切换等,模拟用户步行、跑步、骑行的不同速度和方向变化。
    • 验证 APP 能否正确捕获并记录这些模拟位置变化,同时检查路线绘制是否平滑、里程统计是否精确。
  4. 实地测试

    • 携带多款手机实际行走或骑行预设路线,与专业 GPS 运动手表或 Google 地图等权威应用对比轨迹准确性。
    • 测试各种环境下的表现,例如高楼林立的城市区域、开阔地带、隧道、桥梁等可能导致 GPS 信号不稳定的情况。
  5. 性能测试

    • 通过长时间持续记录轨迹以及频繁切换地点,监控 APP 的内存占用、CPU 使用率以及电池消耗情况。
    • 测试大量数据同步至服务器的速度和稳定性,特别是在弱网络环境下。
  6. 兼容性测试

    • 在多种型号和系统版本的设备上运行 APP,包括主流品牌和老款机型,确保轨迹记录功能在不同硬件配置上的表现一致性。
  7. UI/UX 测试

    • 检查轨迹展示界面的用户体验,包括地图加载速度、轨迹线条颜色和样式、暂停/继续记录按钮响应、缩放和平移地图时轨迹显示的流畅性。
    • 验证轨迹回放功能,检查是否能按时间轴顺序准确重现实时运动路径。
  8. 异常处理测试

    • 强制模拟 GPS 信号丢失、恢复以及错误数据输入,验证软件对异常情况的容错机制和提示信息是否合理。
  9. 自动化测试

    • 利用 Appium、Espresso(Android)、XCUITest(iOS) 等自动化测试框架编写脚本,模拟 GPS 位置变化和用户操作,自动化执行轨迹记录和展示的功能验证。
  10. 回归测试

    • 在每次迭代或发布新版本前,重新运行关键的 GPS 轨迹测试用例,确保新功能不影响原有功能的表现。

其实不用上面说得那么复杂,轨迹图有接口,测试这边只验证能不能根据传过来的数据生成图片就行,你这边犯不着测试轨迹准确性,这些都是硬件工程师测试的内容了,如果不准,你的开发也解决不了的。打开 keep, 抓包一个你以前运动的数据看看,有个接口https://api.gotokeep.com 里的 shareImg 这个参数你看下,里面就是生成轨迹图的,应该你们的也是差不多,原理是直接把拿到的坐标数据传给地图接口

大海 回复

你真是全凭 GPT 来回答啊😂

都是车轱辘话,哈哈哈哈

测试新人 回复

看似很有道理

HH小花 回复

因为 app 能做的事就是要么调用手机系统上的定位服务,定位服务也来源于 GPS/北斗,要么就是跟运动 app 授权拿运动数据解析。因为你说了类似 keep 的软件,那基本也就是把数据转换成图形的需求,这个数据处理各大地图公司都有接口,你们开发也就是把数据封装对发过去,再拿到数据即可。至于精度、定位准不准,完全就不是你的测试范围了。 所以功能层面上,你要验证的是

  1. UI 显示兼容
  2. 无数据时的默认图片
  3. 测试可以授权的相关软件:微信运动、各大手机系统的健康功能等可以获得你运动数据的渠道,都去点一下看提取到的数据能否正确显示

4.还有一个可能复杂点的场景:运动中的数据显示,这个要模拟的话麻烦一点,先跟你的开发聊下用的什么协议看好弄不,实在不行,就下班回家的时候顺便验证,看下生成的情况

说说之前测地图软件的简单手段

  1. 实车路测,这个是必须,测试过程中还要把日志打开(记录轨迹 gps 点)
  2. 给 APP 接口灌入日志测试,日志的来源可以是实车路测,或者内部路线工具生成;这一步可以做成 UI 自动化去检测一些控件是否正常展示
  3. 一些异常场景:在地下车库、重叠高架底下惯导是否正常(gps 信号弱/无得场景,看怎么推算,车有惯导 or 高精,手机没有)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册