IOT测试,我们需要测什么?
物联网是一个嵌入了电子元件,软件,传感器以及网络连接模块的物理实体所组成的网络,这个网络用于收集以及交换数据
物联网是一个嵌入了电子元件,软件,传感器以及网络连接模块的物理实体所组成的网络,这个网络用于收集以及交换数据。
1. 一个典型的物联网由以下部分组成:
设备层(此处把传感器设备和rf设备放在一起):
设备和设备的通信协议。RF设备可能会有诊断消息产生,传感器生成应用数据如温度、湿度。设备连接以及设备间数据传输依靠通信协议完成。常见的通信协议如ZigBee.
数据采集层:
此层通常由网关采集设备上报的数据,然后转换成应用层需要的数据格式,如消息队列。
数据处理层:
如果网络规模大,采集数据多,可能需要进行存储过滤等处理。将数据存放于云中是比较流行的做法。
如果汇报的数据量小,应用层能够处理这些实时数据,则不需要数据处理层。
数据展示层(应用层):
应用层最终面对用户,应用层可以是单纯的dashboard数据展示,提供给用户所需信息。也可以集成一些人工触发行为、或者是制动器触发行为。
由上面分析可以看出,物联网是一个混合了多种硬件,多种协议以及多用应用的一个系统。那么物联网的测试应该怎么进行呢?
2. 按照上面的分层来说,以下测试大多在研发部门进行:
设备层
硬件测试: 例如RF设备的天线,耗电等,传感器精度。 不过大多数IoT解决方案不自行设计硬件,只会采购或和硬件/协议商构成生态系统。
协议测试: 物联网的应用场景多,需求各异。低功耗是物联网多个传输协议的重点,但同时很多场景又对低时延有很高要求,所以功耗和性能是否能达标是测试之一;另外多节点支持,不同网络结构下的路由选择也是重点。 如果采用流行的物联网协议,则不需要对协议本身进行过多测试。
数据采集层
网关: 节点多数据上报频繁时,网关的可靠性是一个重点:网关是否能够处理大量数据(包括网关和设备之间的连接以及网关本身),是否能够规避异常数据的影响,网关所在的物理硬件是否能承受网关长时间不间断的运行。
是否能正确记录数据时间戳,确保后面得到的业务数据的正确性。
数据处理层
数据过滤处理(如有)是否正确,存储以及访问速率。
数据展示层
界面测试: 如任何应用程序一样,展示层需要进行界面测试。可以手工和自动化并用,但是手工测试仍然是必不可少的一个环节。
功能测试: 对于需要的查询和触发,能够得到应有的结果。虽然是应用层,测试人员对于整个业务逻辑以及数据从哪来,都需要有非常清晰的认识。
企业规模和商业策略不同,测试重点肯定不一样。对于大多数解决方案公司来说,E2E(端到端)流程以及前端会是主要关注点;大玩家来说通用平台及性能是关键;协议和硬件国内玩家有限…
3. 在现实的解决方案中,除了以上常规测试项,客户还会关注什么呢?
安全: 怎么保证数据在各层以及传输中的安全,是物联网发展中的一个痛点: 协议是否有加密和鉴权,数据是否有访问权限限制…
没有客户希望如下场景发生:家里的智能电表被黑,体温心跳数据被放在一个人人可以访问的地方…
兼容性: 这里兼容性包括的范围比较广,可能是部署时,多种硬件以及多种协议的兼容; 也可能是上层应用多种平台的兼容; 抑或是各层之间不同版本之间的兼容。
兼容策略通常根据客户或者公司决策层有所不同。
部署以及升级: 部署是否简单,部署时设备传输是否会收到wifi、蓝牙等其他网络环境影响,建筑对射频的反射会对网络造成多大干扰。
嵌入式系统内存有限,硬件尽量预留足够内存,考虑将来升级需求,防止大规模频繁替换硬件。软件需要考虑如何大规模升级以及前后版本兼容性。
协议:在蜂窝通信中和互联网,数据采集存储以及visualization已经有足够应用,在上层技术已经成熟的前提下,一个物联网解决方案的好坏在很大程度上,归结于协议本身和需求的匹配度。
在复杂组网中,耗电低,延迟低以及自组网始终是物联网底层协议的核心。
* 注:本文来自网络投稿,不代表本站立场,如若侵犯版权,请及时知会删除