基于物联网的业务驱动性测试
——以车间自动叫料系统为例

2022-08-25 07:28谢彭
科学与信息化 2022年16期
关键词:测试用例电子标签仓库

谢彭

上海蓝灯人力资源有限公司 上海 200333

引言

相对于传统的软件测试,物联网的系统测试相对来说复杂情况更多。传统的软件测试我们只需要考虑软件的本身的功能准确性、性能要求达标、用户的使用习惯、界面的友好度等各个方面;物联网的软件测试,既要满足软件部分的系统测试要求,还要囊括:硬件与软件的集成测试、硬件与软件的性能测试、硬件与软件的稳定性测试等。

1 物联网定义

物联网(the Internet of Things,简称IoT)是指通过各种信息传感器、射频识别技术、全球定位系统、红外感应器、激光扫描器等各种装置与技术,实时采集任何需要监控、连接、互动的物体或过程,采集其声、光、热、电、力学、化学、生物、位置等各种需要的信息,通过各类可能的网络接入,实现物与物、物与人的泛在连接,实现对物品和过程的智能化感知、识别和管理。物联网是一个基于互联网、传统电信网等的信息承载体,它让所有能够被独立寻址的普通物理对象形成互联互通的网络[1]。

物联网即“万物相连的互联网”,是互联网基础上的延伸和扩展的网络,将各种信息传感设备与互联网结合起来而形成的一个巨大网络,实现在任何时间、任何地点,人、机、物的互联互通[2]。

2 系统业务需求

2.1 车间自动叫料

2.1.1 车间配料区的货架上,安装红外传感器及电子标签。电子标签用于显示当前货架的物料基本信息及指示灯。传感器用于感应当前的位置是否有物料,货架分成2盒或3盒的物料。指示灯:白色-满料,黄色-缺1盒,红色-无任何物料。

2.1.2 原理。当Bin位缺料,电子标签会自动的通过网关向服务器发送位置、物料等信息,系统自动的生成一条叫料需求单。如:A-D-1-1位置每盒 1000个,系统会生成一条如下的记录。

表1 需求叫料表

2.2 仓库自动生成或手动补料单

2.2.1 自动生成补料单。系统将会每30-40min,根据车间的叫料需求单,自动根据车间进行生成补料单。补料单的信息包括单号、车间、数量及打印机时间、明细信息包括:叫料的明细信息及仓库的位置信息等。如表2所示:

表2 补料单

2.2.2 手动生成补料单。根据车间的生产情况,仓库管理员可以手动的生成补料单。生成的补料单与系统自动生成一致。

2.3 PDA设备实现取料及补料路线指引

2.3.1 仓库送料员可以通过PDA手持设备进行仓库取料和车间送料,根据选择的补料单,点击【仓库亮灯】按钮。PDA会显示补料单亮灯的颜色,对应的仓库的位置的电子标签将会亮相同颜色的灯,显示取料的数量。

2.3.2 亮灯的路径:根据库位的方向、位置等信息依次显示。

2.3.3 仓库完成取料,PDA会自动的显示绿色。

2.3.4 在车间操作【车间亮灯】按钮,车间也会根据补料单进行亮灯。物料放置上去,自动的显示为绿色。完成所有的放料,系统可以关闭补料单。完成补料操作。

2.4 大屏实时展示库存情况

2.4.1 仓库的大屏幕实时展示车间及仓库的电子标签库存信息。通过车间或仓库平面图,模拟展示货架的物料库存情况。可以点击查看详细的货架的物料库存情况信息。根据颜色进行区分:红色-无物料,黄色-缺一盒,绿色-满料。

2.4.2 实时展示补料单完成情况。根据车间展示补料单的情况,统计已完成、待完成等单据的状态数量及详细信息。点击单据查看单据的详细信息及状态变化。

2.4.3 实时展示TOP 10物料信息。根据近期(选择的时间段)查看,Top 10的物料信息,统计叫料频次及数量。给调整物料的叫料数量,提供参考依据。

2.4.4 实时监控设备状态。根据系统与网关及电子标签的通信,进行实时监督设备的状态情况。异常的设备将会显示为红色。

3 业务驱动测试方法

3.1 梳理及分析业务流程

测试人员在任何项目中,均可采用业务驱动的方式进行分析业务流程。基于项目的情况,我们进行简单的分析。原操作流程:①车间缺料;②扫描看板;③仓库进行数据手动的整合叫料;④生成补料单;⑤仓库领料备送;⑥车间放料;⑦系统关闭看板单。新流程梳理:①车间自动叫料;②仓库自动生成补料单;③仓库备料;④车间放料;⑤结束单据。根据需求文档中业务流转描述,我们可以分析出系统实际业务流程。

3.1.1 业务的流程图分析。需求文档或操作说明书中的业务流程图,是基于用户业务的流转设计的。测试人员在分析业务流程图,试想一下客户的实际操作环境,模拟业务流程流转。

3.1.2 新旧流程对比。通过新旧流程对比,找出流程的差异化。分析实际的业务是否包含全面,避免重要部分缺失等。异常流程的反推,是否可以形成闭环。

测试流程问题。多问几个问什么?①多想几个异常流程?②多思考是否还有其他的流程情况?③测试流程图制作。

测试人员可以通过各种画图工具制作业务的流程图,基于业务流程图可以于项目组其他的成员或项目经理、BA进行讨论分析。流程图可以提高大家沟通效率,提高测试用例及测试执行的效率。

3.2 业务数据流转流程

业务数据的流转涉及数据的存储表及数据的准确性两个方面,存储表关系的理解是梳理数据流转的一部分、也是检查数据准确性的重要部分。例如:分析自动叫料会涉及某些表,某些表的关联表是哪个?字段是什么意思?这些都是测试过程中,我们需要进行分析。根据业务流程,我们可以画出业务数据的流转图。参考ER图等信息,可以画出如下:

Table :TI (需求表)—> TO(补料单主表)&&TO_Detail(补料单明细表)。

3.3 业务模块分析

依据业务的需要,系统功能模块分为:叫料管理、补料单管理、基础数据(车间数据、仓库数据、物料数据、库存管理)、报表管理、系统管理几个大的模块。针对模块进行分析,详细的了解模块的实际业务的功能。针对业务的流程及数据的流程,分析是否有冗余的系统模块及数据。针对模块的功能,可以分析出与之前案例是否有重叠相似之处。找出共性,方便测试用例的设计。

3.4 编写测试用例

物理网的测试用例主要是考虑系统集成测试用例的编写,以业务驱动的测试用例编写。常规的平台功能性测试用例编写也是需要的,主要还是以实际的业务主干的核心用例为核心。平台的基础模块,如用户、角色权限、清单管理、基础数据维护、邮件、API通用接口等采用传统的软件测试用例编写既可。本系统基础的功能模块,参照测试用例库常用功能测试用例进行测试,提高了测试效率。

业务驱动测试用例,主要描述与硬件相关的核心业务用例。其主要包括:系统自动叫料需求,后台需求管理。补料单生成业务逻辑用例、PDA 指令亮灯、数量、车间补料自动完成工单。这些主线的测试用例,也可以用来作为UAT的测试用例使用。业务用例考虑设备损坏、设备异常等情况。

3.5 搭建测试环境

3.5.1 搭建软件测试环境。作为软件测试工程师,搭建测试环境是最基本的本领之一。物联网的项目涉及的软件平台,相对于常规的软件应用可能多一些平台。例如: 平台的架构层、平台的应用层、大数据管理等等。根据系统的实际需要,搭建软件测试环境。本平台共计2台服务器,分别应用服务器和数据库文件服务器,服务器基于Windows server 2016系统,数据库采用 SQL Server 2016,平台分为前端、后台服务及API接口、邮件服务等。

手持设备:采用Windows SE系统,客户端采用微软的Windows SE支持的软件开发。安装部署、调试设备网络等,确认与服务器端API服务正常通信。

3.5.2 搭建硬件测试环境。硬件测试环境的搭建工作,一般是由硬件工程师完成。作为一名优秀的测试工程师,不能因为此工作有具体的人负责,而忽视了测试的目的性及愿景。动手搭建硬件测试环境,及熟悉硬件的工作原理,是物联网测试工程师不可缺少的一项技能。在项目实施阶段中,通过与项目组的配合,通过购买的备用的测试设备,成功地搭建了2套测试环境。模拟测试环境清单:网关、24V电源、网线、信号线、多组电子标签(仓库及车间)、多组红外感应器等。

3.6 模拟业务场景

依据测试环境,进行业务场景的模拟,模拟场景只能模拟多数正常业务环境,异常的环境或因为测试环境的局限性,无法全部模拟到。尽可能多地考虑异常的业务场景情况,通过改变测试环境的设备、测试数据接口等进行业务场景的模拟。

3.7 物联网测试执行

3.7.1 软件平台功能测试。软件平台测试主要是管理人员及业务人员使用,保证软件平台的功能达到业务部门的要求。平台测试基于测试计划、测试用例、实施平台测试工作。在测试过程中我们主要是采用黑盒测试,保证平台的功能。系统由于是基于内部网运行,未测试外网攻击。

3.7.2 软件平台性能测试。我们采用了JMeter模拟的调用需求接口,经过测试平台满足电子标签的同时叫料的处理能力。根据实际业务的叫料频次,以及系统叫料接口是根据不同的网关进行传输,总的来说压力不是很大。

3.7.3 网络测试。由于平台中采用有线连接,我们给每个网关设定了固定的IP地址。先通过PC端进行网络Ping测试,确认网关的网络是否正常。为了保证服务器与网关的连接稳定性,系统不定时会进行与网关通信,随时监控网关的状态。测试人员可以通过系统的监控日志,查看网络情况。

3.7.4 可用性测试。在车间及仓库中有近1000个亮灯位置,3000多个传感器,需要保证每个亮灯设备都可以正常的使用。测试采用人工观察及系统自动测试两种方法,人工观察主要是测试传感器及主板的设备可用性,将测试结果登记在检查表中,检查表包含:车间位置信息、Bin 位信息,测试是否通过标志、亮灯是否正常、是否可以叫料等。系统自动测试:后台是否可以接收到对应位置的心跳信息,通过心跳包拉出异常报表,再次进行观察确认问题。目的是保证每个设备的可用性,保证数据的准确性。检查表参考样式(如表3所示)。

表3 检查表

3.7.5 数据传输稳定性测试。电子标签的Bin位信息定期需要进行同步、例如:SAP No、物料信息、库存信息变化等。根据系统提供的同步功能进行批量的同步信息,此时检查数据传输的稳定性及准确性十分的重要。验证传输的准确性及稳定性,最好的办法是通过检查表进行核对。系统会自动的接收电子标签返回的结果信息,根据返回的结果于实际的结果进行核查比对。另外一方面采用车间的抽样检查,避免系统自动返回的数据异常。

3.7.6 破坏性测试。安装的电子标签及传感器在货架上,工人领取物料及配送物料。物料盒碰撞线槽、电子屏幕、红外传感器等,是否会造成硬件的损坏。工人快速领取物料,反复的领取、放回是否会对系统产生影响。是否会多叫料,硬件损坏之后如何快速的更换,这些也是物联网测试过程中需要考虑的重要的一点。因为软件的问题可以通过远程、电话等支持解决,硬件的问题涉及更换操作指导会比软件相对麻烦一些。

3.7.7 硬件稳定性测试。网关、电子标签、红外传感器、24V电源等设备,长期工作的稳定性测试。工厂一般是采用24小时,3班倒的制度。在物联网测试过程中,硬件的长期工作是测试的核心。部分问题都出现在硬件的质量上,由于网关或电子标签的黑屏等不能工作原因,导致叫料数据未生成或整个车间不叫料。针对硬件的问题,我们需要进行分析问题。参考如下:可以根据硬件的质量问题、人为撞坏、自然老化等原因进行分析。统计计算硬件的平均寿命、指导购买备用品的数量。

3.7.8 现场环境测试。上述文章提到,模拟环境只能进行业务的部分模拟。现场环境测试,是物联网测试必不可少的一个环节。测试的方案有两种:第一种客户自己测试 ,我们听取现场工人的反馈,根据反馈进行调整。测试人员:现场模拟缺料、备料、补料、完成单据。通过自己的模拟,优化系统的流程步骤。提高工作效率。

4 维修及后期维护

物联网项目的测试及上线只是第一步,在日常使用过程中。由于硬件的保质期、硬件的质量等原因或多或少的会出现一些问题。测试人员可以提前准备好,常见问题手册供客户进行自我维修。硬件问题更换手册等,培训客户的硬件工程师。另外测试人员,接收每次用户的反馈,针对后期的问题(BUG)或操作等问题,分析具体的问题原因,定期地给出项目组及客户方。

定期巡检[3]:①基于检查表进行定期的设备巡检工作,检查设备的外观、屏幕、亮灯、红外传感等。②一键检测硬件信号是否正常。③通过PDA抽检设备,亮灯、数据显示、上传及下发指令。

图1 测试分析

5 不足之处

在此项目的测试过程中,目前无法通过自动的方式知道屏幕的损坏或不亮。电子标签是通过主板进行工作,向网关的通信及下发命令都是通过主板。屏幕的不亮、花屏等,系统无法自动的检测。依赖于车间或仓库人员的上报,以及后期硬件工程师的定期巡检。巡检模板(如表4所示)。

表4 巡检表

6 结束语

物联网的测试在大部分的企业都处于摸索阶段,测试方法及方式基本上是沿用了传统的软件测试方法,测试设计。本文以车间自动叫料的测试方法,阐述了以业务驱动的测试方法,以及物联网测试的一些步骤。期望可以给大家带来一些帮助,另外在物联网的测试过程中。我们也尝试使用了敏捷测试方式,针对大的项目我们拆分成了4个部分实施和测试。分车间的进行安装、部署及调试,工厂的数字化转型一般都是在不影响现有的生产作业的情况下执行。所以我们在类似的项目上,也可以采用分批次,敏捷的测试及执行。

猜你喜欢
测试用例电子标签仓库
基于关键点的混合式漏洞挖掘测试用例同步方法
基于伪随机数发生器的双向认证协议
填满仓库的方法
小猫看仓库
面向多目标测试用例优先排序的蚁群算法信息素更新策略
浅析RFID在图书管理系统中的应用
消防设备
测试用例集的优化技术分析与改进