前段时间,发生了一件“轰动全国”的乌龙事件,那就是“高交会机器人事件”,机器人圈也对其进行了报道。
事件一经发生,就震惊了整个江湖。据说,忽然得到了一股来自宇宙的神秘力量,上演了一把现实版的“原力觉醒”。
别闹,小编的智商>3岁。其实,真相是这样滴!
虽然这件事情被证明是失实报道,但群众的关切一方面体现了现在服务机器人的火爆,另一方面也证明大家对于机器人安全性的重视。家长们不希望自己的“心肝”受到任何的伤害,他们理想中的家庭机器人应该保持“打不还手,骂不还口”优良传统。
现在,服务机器人已经被看作是未来家庭中的年轻成员,越来越多的服务机器人从实验室和工厂走进了人们生活中。那么,如何保证服务机器人的安全性和可靠性,怎样测试服务机器人的硬件系统和软件通信接口,成为了人们持续关注的话题。
这个问题不论对于开发人员还是测试人员,都是一个艰难的过程。对于而言,因为执行任务的可重复性高,环境可控性强,测试预期条件比较明确,所以遇倒的困难会有所降低。但服务机器人面临的是“真正的世界”,从另一方面讲,这体现了服务机器人领域面临的一个挑战当一个复杂的机器人进入动态的、不断变化的人类世界,如何保证其安全性?
在这里,分享一种应用于服务机器人软件组件与硬件通信的循环回归测试方法,这种测试方法的优点是可以重复的方式高效、快速的对软件组件进行测试。
众所周知,在软件工程中,回归测试是一个著名的软件测试技术,一般在软件进行了修复或增加新功能后进行测试。在机器人开发测试过程中,我们借鉴软件测试技术中“回归测试”的概念,在机器人硬件系统固定的前提下,针对软件组件的调试过程中,采用自动化的循环回归测试方法,可以以较高的效率找到软硬件通信中存在的缺陷问题。
这里的回归测试可以理解为,每当外界环境发生了一种或若干种变化,机器人的软件组件都会执行一次测试,并与硬件系统产生交互。回归测试通过建立通信库,来记录软件、硬件及其驱动软件之间的通信会话。由于各种不同的API函数与硬件接口的类型不同,通信库应支持USB、TCP、UDP等多种主要通信接口协议。测试要记录正确的通信会话和通信日志系统,然后通过软件组件、模拟硬件设备和通信端口来重播通信会话。由于服务机器人通信模块种类较多,能够模拟不同硬件的通信方式是很重要的。
通过循环回归的测试方法,开发和测试人员可以在现有的测试条件基础上,尽可能多的覆盖到更多的测试场景用例,从而在最大程度上确保服务机器人软硬件交互的可靠性。
通过这种不断循环的实时交互能力,服务机器人的安全性和可靠性也会越来越强。那么,下次再遇上机器人不听话怎么办?一顿循环回归测试分分钟把它“治服”。