什么是物联网?
物联网是利用嵌入式电子、微芯片等技术将汽车、家电、医疗设备连接起来,收集和交换不同种类的数据,称为物联网。这种技术允许用户通过网络远程控制设备。
常见的物联网技术应用:
物联网技术
下面是物联网中常用的几种技术:
物联网测试策略
下面我们看物联网测试常用的测试策略有哪些:
物联网测试挑战
下面我们看下在物联网环境下的测试要面临着哪些方面的挑战。
物联网是一种架构,它由各种硬件和软件组件紧密耦合而成的,不仅是软件的应用,硬件、传感器、通信网关等也起着至关重要的作用。
只有功能测试是不足以完成验证系统,在环境、数据传输等方面总是相互依赖的,因此与通用软件系统的测试相比,物联网应用的测试就显得更为复杂和乏味了。
2. 设备集成
由于物联网应用是硬件和软件的不同集合之间的体系结构,因此必须实时/接近实时的通信,当进行集成时,安全性、向后兼容性、升级等就会成为测试的一大挑战。
3. 实时数据测试
由于物联网应用的复杂性和特殊性,想要获得物联网系统的实时数据就显得非常困难或是成本巨大,但实时数据的测试又是确保物联网服务质量的至关重要的方向,因此这对于测试团队来讲是一件极具挑战的工作
4. 兼容性测试
由于众多智能众多的出现,物联网应用会分布在不同的平台上,例如ios、android、windows、linux等等,但我们不能忽略我们不拥有或不模拟设备上的测试,我们无法去在所有的设备上进行测试验证,即便现在有所谓的云兼容测试,但依旧无法满足我们实际兼容性测试的需要(一是直接成本不允许投入,二是无法投入这么大的工作量),所以物联网应用的兼容性测试也会是一个挑战
5. 网络可用性
在物联网中,网络连接起着至关重要的作用,因为物联网的基础设施是以更快的传输数据为基础的,所以我们需要在不同的网络环境下进行测试。
为了模拟不同的网络环境,我们需要改变网络负载、连接性、稳定性等,另外从长远来看,我们很难去预判出用户新场景的变化所带来的复杂性。
所以网络可用性的测试将是一个巨大的挑战。
测试工具
物联网测试过程中需要用到各式各样的工作,下面根据目标需求进行分类说明:
1. 软件
1.1 wireshark,这是开源的协议分析工具,是必备的神器,是最强大的分析工具
1.2 Tcpdump,这是与wireshark类似的工作,只是没有GUI,它是一个基于命令行,可以帮助我们捕获通过网络传输的tcp/ip和其他数据包
这两个协议分析工具,是从事物联网或网络通信领域必备的工具,但笔者以为,这是软件测试从业者必备的工具
2. 硬件
2.1 JTAG Dongle:这类似于PC应用程序中的调试器。这有助于调试目标平台代码并逐步显示变量
2.2 示波器:用于检查各种事件的时间戳,电源故障,信号完整性检查
2.3 软件定义的无线电:这是用来模拟接收机和发射机的一个大范围的无线网关
随着物联网的进一步发展,物联网测试将成为国内软件测试从业者职业生涯持续的基础领域之一。
支持IoT的小工具、智能设备应用程序和通信模块在研究和评估各种IoT服务的性能和行为方面发挥着至关重要的作用。
支持iot的设备和服务的糟糕设计会妨碍应用程序的正确功能,从而对最终用户体验产生负面影响。
小结
物联网测试方法可以根据其涉及的系统/体系结构而有所不同,但经典测试方法论是物联网测试的基石,所以测试人员应该更多的关注作为用户的测试方法,而不是基于需求的测试方法。
物联网测试可能是一项艰难/具有挑战性的工作,但对测试团队来说,确保这样一个由设备、协议、硬件、操作系统、固件等组成的复杂网络的质量也非常令人兴奋。