System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种用于端云交互的自动化测试方法及系统技术方案_技高网

一种用于端云交互的自动化测试方法及系统技术方案

技术编号:41070385 阅读:2 留言:0更新日期:2024-04-24 11:26
本发明专利技术涉及数据处理技术领域,提供了一种用于端云交互的自动化测试方法及系统。该方法应用于云平台向测试设备发送数据过程,包括:自动化操作平台向中间服务器发送相关测试信息,并根据相关测试信息进行对应动作,以使云平台下发交互协议至中间服务器;中间服务器根据相关测试信息对所述交互协议进行处理,并转发至测试设备;测试设备对所述交互协议进行解析和处理,并将解析数据和处理结果反馈至中间服务器;中间服务器将解析数据发送至云平台,将处理结果发送至自动化操作平台。本发明专利技术具有提升测试效率与测试覆盖度,提升开发效率,降低人工成本等优点。

【技术实现步骤摘要】

本专利技术涉及数据处理,尤其涉及一种用于端云交互的自动化测试方法及系统


技术介绍

1、本部分的陈述仅仅是提供了与本专利技术相关的
技术介绍
信息,不必然构成在先技术。

2、设备上云是当前工业物联网领域常用的技术手段,云平台与设备之间通常基于mqtt进行连接和消息传输。为了实现各式各样的网关、dtu、串口服务器等硬件产品上云,一般需要构造一套庞大而精密的交互协议及上云逻辑,即一个云平台对多种类的上云设备,且这些协议和交互逻辑是唯一的。

3、云平台与设备实现的功能大致为:

4、1)上云:当云平台禁用设备上云时,设备通常在一个udp服务器等待指令;当云平台启用上云时,设备会收到udp消息,开始连接云平台的mqtt服务器;

5、2)常规功能:(不同的功能通过不同的topic主题进行数据交互)。

6、云监测,设备状态查询、设置、参数配置、远程升级等;

7、云组态:控制设备进行边缘计算、透传转发等相关组态动作,并实时显示上报的数据信息;

8、为了保证云平台和设备之间交互(协议、逻辑)的准确性、稳定性,需要测试的工作量是巨大的。基于上云功能,总的来说测试大致的内容如下:

9、1)从协议上看,一是要测试mqtt基础协议,包含连接、订阅、发布等标准协议以及基于标准协议格式中有效载荷中增加的自定义协议字段;二是基于mqtt的payload,封装的json格式的自定义协议。这些协议的测试需要考虑每个协议字段的准确性以及健壮性,例如某个协议字段不符合要求是否可以准确识别并做出反馈。

10、2)从功能上看,一是测mqtt基础的连接功能、订阅和发布功能,尤其对异常产生时的处理逻辑,例如连接mqtt失败应该怎么处理,订阅主题失败应该怎么处理,二是平台实现的功能的测试,如上云逻辑、云监测、云组态、云端固件升级、参数配置等,上云要考虑设备禁用状态下在udp服务器等待上云,启用后才可以上正式的mqtt;除上云外,其他的功能都是通过不同的主题以及主题下payload去精细化定义的,一是要看云平台和设备是否同步逻辑和操作,避免上下不一;二是要看各功能实现的正常流程和异常处理,例如当设备连接云平台后,首先要跟平台做一次数据校准(状态、配置的参数等),校准一致时应该怎么处理,校准不一致时应该怎么处理,当发出交互协议(无论是云端还是设备端)未收到对端回复时应该怎么处理。

11、在以往的测试过程中,由于平台开发和设备开发无法同步,联调工作往往是在项目靠后的阶段,所以对于云平台的测试或者硬件设备的测试都是分开进行的,这里尤其是交互的协议和逻辑,大多是基于手动模拟去实现的,工作效率是极低的,可重复性差,新的设备上云需要重新验证。

12、如果更高级一些,通过构建测试桩和测试驱动的方式,如图1(a)、图1(b)所示。的确可以分别测试云平台和设备各自的协议和功能逻辑,但是这样的测试桩和驱动的代价是巨大的,因为需要构造大量的协议数据和测试逻辑。例如对设备来说,需要搭建一个近乎等同于云平台的测试服务器平台,并且可以实现各种测试场景;而对于云平台来说,相当于要构建一台虚拟设备进行交互。并且通过模拟的桩和驱动也并非最真实的反馈。

13、在联调阶段,设备和云平台的交互的场景是多变和复杂的,而这些场景才是真正的云平台和设备交互的实际情况,例如设备给云平台发交互信息,云平台不回复或者延时回复,实际条件下云端肯定是立即回复的,极少有不回复的情况。这些情况虽然可以通过上述的测试桩和驱动去模拟,但是增加了巨大的工作量。


技术实现思路

1、为了解决上述
技术介绍
中存在的技术问题,本专利技术提供一种用于端云交互的自动化测试方法及系统,本专利技术包括两部分,一部分是在测试设备和云平台间搭建一个中间服务器,另一部分是通过自动化操作平台(如python unitest+selenium)操作云端界面和设备配合完成相关测试。本专利技术通过将中间服务器和自动化操作平台结合在一起,保证了交互的协议都是从真实的云平台和设备发出的,确保协议的真实性、实时性和准确性,进而确保了客户使用的操作场景的覆盖。

2、为了实现上述目的,本专利技术采用如下技术方案:

3、本专利技术的第一个方面提供一种用于端云交互的自动化测试方法。

4、一种用于端云交互的自动化测试方法,应用于云平台向测试设备发送数据过程,包括:

5、自动化操作平台向中间服务器发送相关测试信息,并根据相关测试信息进行对应动作,以使云平台下发交互协议至中间服务器;

6、中间服务器根据相关测试信息对所述交互协议进行处理,并转发至测试设备;

7、测试设备对所述交互协议进行解析和处理,并将解析数据和处理结果反馈至中间服务器;

8、中间服务器将解析数据发送至云平台,将处理结果发送至自动化操作平台。

9、进一步地,所述相关测试信息包括测试项和指定处理方式。

10、进一步地,所述指定处理方式包括不处理、延时转发、更改协议特定字段的内容、分包和/或粘包。

11、进一步地,如果测试设备自身的状态和参数需要同步确认是否符合要求,自动化操作平台通过测试设备的连接接口下发指令查询和设置。

12、进一步地,测试过程中的所有测试结果和问题日志均由自动化操作平台记录并统计后输出。

13、本专利技术的第二个方面提供一种用于端云交互的自动化测试系统。

14、一种用于端云交互的自动化测试系统,应用于云平台向测试设备发送数据过程,包括:在测试设备和云平台之间设置的中间服务器和自动化操作平台,所述中间服务器与自动化操作平台之间进行相互通信,所述云平台通过中间服务器和/或自动化操作平台与测试设备进行相互通信;

15、所述自动化操作平台,用于向中间服务器发送相关测试信息,并根据相关测试信息进行对应动作,以使云平台下发交互协议至中间服务器;

16、所述中间服务器,用于根据相关测试信息对所述交互协议进行处理,并转发至测试设备;

17、所述测试设备,用于对所述交互协议进行解析和处理,并将解析数据和处理结果反馈至中间服务器,以使中间服务器将解析数据发送至云平台,将处理结果发送至自动化操作平台。

18、本专利技术的第三个方面提供一种用于端云交互的自动化测试方法。

19、一种用于端云交互的自动化测试方法,应用于测试设备向云平台发送数据过程,包括:

20、自动化操作平台向中间服务器发送相关测试信息,并向测试设备发送指令,以使设备主动上报协议至中间服务器;

21、中间服务器根据相关测试信息对所述协议进行处理,并转发至云平台;

22、云平台对所述协议进行解析和处理,并将解析数据和处理结果反馈至中间服务器;

23、中间服务器将解析数据发送至测试设备,将处理结果发送至自动化操作平台。

24、进一步地,所述相关测试信息包括测试项和指定处理方式。...

【技术保护点】

1.一种用于端云交互的自动化测试方法,其特征在于,应用于云平台向测试设备发送数据过程,包括:

2.根据权利要求1所述的用于端云交互的自动化测试方法,其特征在于,所述相关测试信息包括测试项和指定处理方式;

3.根据权利要求1所述的用于端云交互的自动化测试方法,其特征在于,如果测试设备自身的状态和参数需要同步确认是否符合要求,自动化操作平台通过测试设备的连接接口下发指令查询和设置。

4.根据权利要求1所述的用于端云交互的自动化测试方法,其特征在于,测试过程中的所有测试结果和问题日志均由自动化操作平台记录并统计后输出。

5.一种用于端云交互的自动化测试系统,其特征在于,应用于云平台向测试设备发送数据过程,包括:在测试设备和云平台之间设置的中间服务器和自动化操作平台,所述中间服务器与自动化操作平台之间进行相互通信,所述云平台通过中间服务器和/或自动化操作平台与测试设备进行相互通信;

6.一种用于端云交互的自动化测试方法,其特征在于,应用于测试设备向云平台发送数据过程,包括:

7.根据权利要求6所述的用于端云交互的自动化测试方法,其特征在于,所述相关测试信息包括测试项和指定处理方式;

8.根据权利要求6所述的用于端云交互的自动化测试方法,其特征在于,如果云平台自身页面显示需要同步确认是否符合要求,自动化操作平台通过页面的元素的状态显示进行判断。

9.根据权利要求6所述的用于端云交互的自动化测试方法,其特征在于,测试过程中的所有测试结果和问题日志均由自动化操作平台记录并统计后输出。

10.一种用于端云交互的自动化测试系统,其特征在于,应用于测试设备向云平台发送数据过程,包括:在测试设备和云平台之间设置的中间服务器和自动化操作平台,所述中间服务器与自动化操作平台之间进行相互通信,所述测试设备通过中间服务器和/或自动化操作平台与云平台进行相互通信;

...

【技术特征摘要】

1.一种用于端云交互的自动化测试方法,其特征在于,应用于云平台向测试设备发送数据过程,包括:

2.根据权利要求1所述的用于端云交互的自动化测试方法,其特征在于,所述相关测试信息包括测试项和指定处理方式;

3.根据权利要求1所述的用于端云交互的自动化测试方法,其特征在于,如果测试设备自身的状态和参数需要同步确认是否符合要求,自动化操作平台通过测试设备的连接接口下发指令查询和设置。

4.根据权利要求1所述的用于端云交互的自动化测试方法,其特征在于,测试过程中的所有测试结果和问题日志均由自动化操作平台记录并统计后输出。

5.一种用于端云交互的自动化测试系统,其特征在于,应用于云平台向测试设备发送数据过程,包括:在测试设备和云平台之间设置的中间服务器和自动化操作平台,所述中间服务器与自动化操作平台之间进行相互通信,所述云平台通过中间服务器和/或自动化操作平台与测试设备进行相互通信;<...

【专利技术属性】
技术研发人员:刘志松杨战东李效明古欣成海峰
申请(专利权)人:山东有人物联网股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1