测试物联网 (IoT):

在探讨“生活基本必需品”的定义时,多数人会列举出“食物、住所、衣物”等传统要素。

然而,回顾一个世纪之前,人类社会经历了显著的演变,导致了新的生活必需品的出现。这种演变使得我们的生活变得更加便捷、舒适和高效。

例如,我们已经不再依赖于传统的开关来控制照明,不再通过信息亭支付通行费,而是通过智能化手段监测健康状况,以及更高效地追踪车辆移动。此类例子不胜枚举。

面对当前的状况,我们应如何应对?这些变化有何本质区别?

首先,我们必须深入理解这些变化,随后才能掌握如何对它们进行科学的测试。

物联网测试

什么是物联网 (IoT)?

物联网是使用嵌入式电子设备、微芯片等将车辆、家用电器、医疗设备连接起来,以收集和交换不同类型的数据,称为物联网。

该技术允许用户通过网络远程控制设备。

IoT 示例

IoT 在实际应用中的一些示例如下:

1、在可穿戴技术中:

Fitbit 手环和 Apple Watch 等可穿戴设备可轻松与移动设备同步。比如最近比较火的华为watch D2就属于物联网设备 。

这有助于捕获必要的信息,例如健康、心率监测、睡眠活动等。这也有助于在它们上显示来自移动设备的数据和通知。

2、基础设施和发展:

通过使用 CitySense 等应用程序,可以更轻松地获取实时户外照明数据,并根据这些数据打开或关闭路灯。

此外,还有各种应用程序可用于在复杂的城市布局中控制交通信号和停车位可用性。

3、医疗保健:

有很多软件可以用来观察病人的健康状况。

根据基本数据,这些服务可以控制一天里不同时间点的药物剂量。

举个例子,有个软件叫UroSense,它可以监测病人身体里的液体量,需要的时候还能启动液体转移。而且,这些数据还能无线传给所有相关的人。

IoT 中使用的技术

以下是 IoT 中最常用的一些技术:

  • RFID [射频代码] 标签和 EPC [电子产品代码]

  • NFC [Near Field Communication] 用于实现电子设备之间的双向交互。这基本上适用于智能手机,主要用于进行非接触式支付交易。

  • 蓝牙:这用于短距离通信足以解决问题的地方。这主要用于可穿戴技术。

  • Z 波:这是一种低功率 RF 通信技术。这主要用于家庭自动化、灯控制等。

  • 无线网络:这是 IoT 最常用的选择。在 LAN 上时,这有助于无缝传输文件、数据和消息。

测试 IoT

以医疗保健监测系统为例,该系统通过仪器对患者的健康状况、心率、液体摄入量等关键生理参数进行实时监测,并将监测结果以报告形式传输给医疗专业人员。所有数据均被记录于系统数据库中,便于随时调取历史数据进行分析。

基于这些数据,医生能够制定相应的药物治疗方案和液体补充计划。该过程可以通过与医疗设备相连的任何终端设备,包括计算机或移动设备,实现远程控制和操作。

现在要测试这样的架构,我们需要通过多种测试方法,例如:

1、可用性:

  • 我们必须确保此处所用之每台设备均具备可用性。

  • 所使用的医疗保健跟踪设备应具备足够的便携性,以便能够转移至医疗的不同领域。

  • 设备应具备足够的智能性,不仅能够推送通知,还能够推送错误消息、警告等。

  • 系统应具备一个选项,用于注销所有事件,以便为最终用户提供清晰的信息。若其无法实现此功能,系统亦应将事件推送至数据库以存储。

  • 应在设备 [计算机/移动设备] 上显示通知,并确保其正确处理显示。

  • 应彻底测试显示数据、处理数据、从设备推送作业任务方面的可用性。

2、物联网安全

  • 物联网安全问题:物联网就是以数据为核心,所有连接的设备和系统都是靠数据来运行的。

  • 说到设备之间的数据流动,数据在传输过程中可能会被别人看到或者读取。

  • 从测试的角度来说,我们要检查数据在从一个设备传到另一个设备的时候,是不是有保护措施或者加密。

  • 只要有界面,我们就得确保它有密码保护。

3、连接性:

  • 鉴于其作为医疗保健解决方案的性质,连接性扮演着至关重要的角色。

  • 该系统必须始终保持可用状态,并且需要与相关利益方实现无缝的互联互通。

  • 在评估连接性时,有两个关键方面需要进行测试:

  • 首先,在连接正常运行的情况下,数据传输和接收设备作业任务的过程应保持无间断。

其次,必须对连接中断的情况进行测试。即便系统和网络的性能再强大,系统仍有可能出现离线状态。

作为测试人员,我们亦需对离线状态进行检验。一旦系统无法在网络上正常工作,应立即触发警报,通知医生,以便他们能够开始手动监控患者的健康状况,而不是完全依赖于系统,直至系统恢复在线。

此外,系统中应内置一种机制,以确保在离线期间收集的所有数据能够得到妥善保存。一旦系统重新联网,这些数据应被及时传输,确保在任何情况下数据的完整性不受损害。

4、性能:

  • 当我们谈论医疗保健领域的系统时,我们需要确保该系统对于整个医院具有足够的可扩展性。

  • 进行测试时,一次为 2-10 名患者进行检测,并将数据传播到 10-20 台设备。

  • 当整个医院连接起来,并且有 180-200 名患者连接到系统时,传播的数据比测试的数据要大得多。

  • 作为测试人员,我们需要确保系统执行相同的作,即使添加的数据被传播。

  • 我们还应该测试监控实用程序以显示系统使用情况、电源使用情况、温度等。

5、兼容性测试:

  • 查看 IoT 系统的复杂架构,兼容性测试是必须的。

  • 物联网兼容性测试需要测试项目,例如多个作系统版本、浏览器类型和相应版本、设备代次、通信模式 [例如蓝牙 2.0、3.0]。

6、试点测试:

  • 就 IoT 而言,Pilot testing 是必须的。

  • 只有在实验室中进行测试才能确保产品/系统运行良好。但是,当暴露在实时条件/步骤/场景中时,这可能会适得其反。

  • 在试点测试期间,该系统将暴露在真实字段中的有限数量的用户面前。他们使用该应用程序提供有关系统的反馈。

  • 这些注释派上用场,使应用程序足够健壮,可用于生产部署。

7、监管测试:

  • 这是一个需要通过多个监管/合规检查点的医疗保健系统。

  • 考虑这样一个场景:产品通过了所有测试步骤,但在最终的合规性检查表 [由监管机构执行的测试] 中未通过。

  • 最佳做法是在开发周期本身开始时满足法规要求。同样的作也应作为测试清单的一部分进行。

  • 这样做可以确保商品也被认证为监管检查表的一部分。

8、升级测试:

  • IoT 是多种协议、设备、作系统、固件、硬件、网络层等的组合。

  • 执行升级时,无论是系统还是上述任何涉及的项目,都应该进行彻底的回归测试/应采用策略来克服与升级相关的问题

  •  可以到我的个人号:atstudy-js

    ☑️这里有10W+ 热情踊跃的测试小伙伴们

    ☑️一起交流行业热点、测试技术各种干货

    ☑️一起共享面试经验、跳槽求职各种好用的

    即可加入领取 ⬇️⬇️⬇️

    转行、入门、提升、需要的各种干货资料

    内含AI测试、 车载测试、自动化测试、银行、金融、游戏、AIGC...

IoT 测试挑战

测试人员在 IoT 中面临的挑战如下:

1、硬件-软件网格

IoT 是一种架构,它在各种硬件和软件组件之间紧密耦合。不仅软件应用程序构成了系统,而且硬件应用程序、传感器、通信网关等也起着至关重要的作用。

仅功能测试并不能帮助完全认证系统。在环境、数据传输等方面总是相互依赖。因此,与测试通用系统 [仅软件/硬件组件] 相比,它变得是一项乏味的工作。

2、设备交互模块

由于这是不同硬件和软件集之间的架构,因此它们必须实时/近乎实时地相互通信。

当它们彼此集成时,安全性、向后兼容性和升级问题等问题将成为测试团队面临的挑战。

3、实时数据测试

正如我们之前所讨论的,对于这样的系统来说,试点测试/监管测试是强制性的,获得此类数据也变得非常困难。

作为测试团队的一员,获得监管检查点或在试点中部署系统是非常困难的。如果系统与我们的示例一样与医疗保健相关,则步骤会变得更加困难。这对测试团队来说仍然是一个巨大的挑战。

4、用户界面

物联网分布在属于每个平台 [iOS、Android、Windows、Linux] 的设备上。目前,可以在设备上进行测试,但在所有可能的设备上进行测试几乎是不可能的。

我们不能忽略从我们没有或模拟的设备访问 UI 的可能性。这是一个很难克服的挑战。

5、网络可用性

网络连接起着至关重要的作用,因为 IoT 就是要始终以更快的速度传输数据。IoT 架构必须针对各种网络连接/速度进行测试。

为了测试这一点,虚拟网络模拟器主要用于改变网络负载、连接性、稳定性等。然而,实时数据 / 网络始终是一个新场景,从长远来看,测试团队不知道瓶颈会在哪里发展。

IoT 测试工具

在测试 IoT 系统期间会使用各种工具:

1、软件:

  • Wireshark:这是一个开源应用程序,用于监控接口、源/目标主机地址等的流量。

  • tcpdump 中:这与 Wireshark 的工作类似,只是它没有 GUI。这是一个基于命令行的实用程序,可帮助用户显示通过网络传输或接收的 TCP/IP 和其他数据包。

2、硬件:

  • JTAG 加密狗:这类似于 PC 应用程序中的调试器。这有助于调试目标平台代码并逐步显示变量。

  • 数字存储示波器:这用于检查带有时间戳的各种事件、电源毛刺和信号完整性检查。

  • 软件定义无线电:这用于模拟各种无线网关的接收器和发射器。

在我们周边的发展中国家,物联网市场正处于持续增长阶段,蕴含着众多机遇。预计在不久的将来,物联网将成为测试人员在这些国家生存的关键因素。

支持物联网的小工具、智能设备应用程序以及通信模块,在研究和评估各类物联网服务的性能与行为方面,扮演着至关重要的角色。

若物联网设备和服务的设计存在缺陷,可能会妨碍应用程序的顺畅运行,从而对用户的最终体验产生不利影响。

总结

物联网(IoT)的测试方法可能因所涉及的系统或架构的不同而有所差异。测试人员应更加重视用户测试方法,即测试即服务(TAAS),而非仅依据需求进行测试。

物联网测试中的另一个关键环节是集成测试。若集成测试计划设计得足够精确且具有强大的覆盖能力,能够有效识别系统中的缺陷,则可认为物联网测试取得了成功。

物联网测试可能是一项极具挑战性的工作,然而,对于测试团队而言,能够认证如此复杂的设备、协议、硬件、操作系统、固件等构成的网络,这一过程本身也充满了令人兴奋的挑战。

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐