测试移动应用程序与测试 PC 应用程序有哪些不同之处?

软件测试 移动的
2022-01-16 23:38:34

我的公司正在考虑为 Android 设备和 iPhone 提供应用程序。测试移动应用程序与测试 PC 应用程序(或在浏览器中运行的应用程序)有哪些不同的挑战?

4个回答

在我的头顶上:

  • 内存占用。在桌面操作系统上“很少”失败的分配可能在移动平台上失败
  • 电池影响 - 在桌面应用程序中,线程轮询或后台任务很常见。在移动平台上,这样的活动会很快耗尽电量
  • 桌面应用程序通常假设可靠的网络访问。移动平台没有一致或可靠的网络访问
  • 如果您使用自动化工具(或其他工具)来帮助测试您的桌面应用程序,它们可能无法在移动操作系统上运行。如果这些对您的测试至关重要,您将需要寻找替代工具或移动版本。
  • 位置感知——如果应用程序使用 GPS 或基于 Cell 的位置信息,您需要一种机制来测试相关案例——没有可用的位置信息;意想不到的位置等
  • 屏幕尺寸和方向——除了不同的屏幕分辨率(特别是在 Android 上)和手机与平板电脑测试之外,大多数移动平台可以在没有警告的情况下动态地从“纵向”切换到“横向”模式。

我敢肯定我遗漏了很多地方,但社区应该注意这一点。

一些事情浮现在脑海:

  1. 蜂窝网络覆盖不仅会影响您的互联网连接,还会影响 CPU
  2. 移动设备 CPU 通常较慢
  3. 移动操作系统施加了许多台式机中不存在的限制,例如 IOS 处理多任务
  4. 兼容性很痛苦,Android 或 IOS 在不同设备上的表现略有不同,甚至屏幕分辨率也不同。
  5. 电池影响有更多方面,移动操作系统具有节省电量的技巧,因此您可能会发现自己身处意料之外的地方。一个例子是数据调用可以进入休眠状态,需要几秒钟或更长时间才能恢复。
  6. 蜂窝数据引入了较大的延迟和丢包率,例如移动 TCP 计时器要大得多,使得检测连接丢失更加困难。

在许多方面,它更像是一个 PC 应用程序而不是浏览器应用程序——您必须在测试时期望用户下载您的应用程序后,他们可能永远不会更新它,或者可能不会像您希望的那样快速更新它。除了现场可能存在错误的代码外,您可能还必须针对各种版本的应用程序测试后端系统。

移动应用程序需要考虑的事项:

  1. 短信、彩信、电话等外部中断:您正在设备中运行您的应用程序,突然收到短信、彩信、电话或任何其他通知。
  2. 具有不同设备配置的不同设备制造商(如 Android 和 Window Phone)具有不同的制造商三星、HTC 等,具有不同的处理器、显示分辨率等。
  3. 仅支持手机或平板电脑或两者
  4. 不同的互联网连接网络,如 WiFi、2G、3G
  5. 支持NFC(近场通信)
  6. 设备电池因素:请注意,电池的不同状态会对您的应用程序产生影响。如果电池耗尽、充满或正在充电,那么它会对您的应用程序产生一些影响。
  7. 基于位置的应用程序:这些应用程序必须在真实位置和 GPS 开/关状态下进行测试。
  8. 一些特定于平台的测试,例如在启用某些限制时在 iOS 设备上测试您的应用程序,例如禁用相机、禁用在日历中添加事件、禁用应用内购买,然后检查您何时尝试在应用中使用这些功能