发布成功的物联网产品部分取决于确保设备本身提供客户期望的用户体验。但在许多情况下,这也取决于测试客户用于控制物联网设备的物联网移动应用程序。许多消费级物联网产品(如智能恒温器、联网门铃和健身器材)都依赖于用户手机上运行的移动应用程序来提供管理界面并向客户提供数据。如果您的物联网移动应用程序无法正常工作,您的物联网设备本身也不会为您的用户提供良好的工作。
这就是为什么找到测试物联网移动应用程序与其交互的设备之间的独特交互的方法,是任何提供物联网设备的企业软件测试策略的必要组成部分。继续阅读有关应对此挑战时应考虑的提示,以及有效的物联网移动应用程序测试策略通常是什么样子的概述。
IoT移动应用的测试要求
在某些方面,与物联网设备交互的移动应用程序带来了独特的测试挑战。若要可靠地测试应用,需要模拟应用运行的真实条件。这可能很难做到,因为大多数物联网应用程序都依赖于蓝牙网络来连接到设备,而且大多数测试自动化工具在设计时都没有考虑到这种类型的配置。
其他挑战包括物联网移动应用程序可能使用各种各样的协议,这意味着测试工程师在规划测试时需要考虑的更多变量。最重要的是,移动应用程序从物联网设备接收数据的方式可能会有所不同。例如,一些物联网设备连续实时地将数据流式传输到移动应用程序,而其他物联网设备则定期发布推送更新或仅间歇性连接。
如何不测试移动应用程序
鉴于上述独特的挑战,可能很容易满足于物联网移动应用程序测试策略,该策略依赖于手动测试来评估应用程序与其管理的设备之间的交互情况。你可以派你的工程师手里拿着手机来执行实际活动——比如踩物联网自行车或按智能门铃——并评估移动应用程序的反应。
但这种方法并不理想。除了手动测试设备需要花费大量时间(并且每次更新应用程序时都必须重复费力的手动测试过程)这一明显事实之外,手动的物联网移动应用程序测试方法使得很难在各种设备上进行测试,因为您无法利用设备场。相反,您只能使用工程师可以使用的少数设备,这些设备可能仅代表客户可能使用的设备的一小部分。这会导致测试覆盖率不完整,并增加应用性能或可靠性问题在影响最终用户之前未被发现的风险。
更好的方法
幸运的是,有更好的方法。您可以将移动设备场连接到物理IoT设备模拟器,然后运行涵盖各种方案并可靠地模拟真实世界条件的自动测试。
物联网设备模拟器是一种特殊设备,它连接到移动应用程序并向其发送与真实物联网设备相同的数据-除了模拟器使工程师能够准确控制发送哪些数据。这意味着测试团队可以配置模拟器来表示他们想要测试的所有用户操作,然后使用与客户相同的协议和连接方法将该数据推送到物联网移动应用程序。
换句话说,如果要测试当用户踩下智能自行车上坡或突然刹车时移动应用程序的响应方式,则可以将IoT模拟器配置为将数据发送到模拟这些操作的设备。或者,您可以测试控制智能恒温器的应用程序如何响应环境温度的突然下降,或者移动应用程序如何处理用户长时间反复按下的物联网门铃。除了可以在各种设备上自动执行这些测试之外,这种方法还允许工程师利用基于云的测试软件。只要您的移动设备与测试云集成,即使您的测试软件未在本地托管,您也可以通过本地连接测试移动应用程序和IoT设备之间的交互。
物联网移动应用测试的未来
我在此处描述的物联网移动应用测试策略类型对于确保物联网设备及其依赖的应用满足用户期望至关重要,即使物联网设备的规模和复杂性持续增长也是如此。当消费者物联网设备较新且客户期望较低时,手动物联网测试可能有效,但要在当今高风险的物联网世界中有效测试,您需要只有物联网设备模拟器才能提供的自动化、广泛覆盖范围和云友好型测试。