zoukankan      html  css  js  c++  java
  • 利用虚拟实验室对物联网(IoT)设备进行成本效益测试

    即使是最小的物联网设备,也生活在一个复杂的环境中,在开发的时候可能还没有完全了解。事实上,我们已经看到了设备首次连接到互联网所带来的安全问题。在上一篇文章中,我们讨论了服务导向对设计、开发和测试的好处。在这篇文章中,我们将把基于服务的测试和服务虚拟化带到下一步——虚拟实验室。构建一个真实的物理测试实验室环境是很困难的,即使完成了,也会成为系统测试的主要瓶颈。虚拟实验室消除了这一瓶颈,同时为基于服务的物联网设备测试提供了新的优势。

    许多物联网设备还没有准备好进入黄金时段

    最近的一项研究发现,80%的物联网应用没有进行安全漏洞测试。Barr Group发现,56%的嵌入式设备开发者没有审查源代码是否存在安全漏洞,37%的开发者没有书面编码标准。这些都不是令人鼓舞的统计数据,很明显,物联网设备制造商需要更加重视质量、安全和安全性。为了确保测试更加严格、一致和彻底,测试自动化是重要的一步。测试,尤其是针对安全漏洞的测试,往往被认为成本太高、太复杂,因此被匆匆忙忙或完全忽略。但让你的客户(和攻击者)为你测试物联网设备的安全性是一个昂贵的错误。

    虚拟实验室的成分

    真实的测试实验室需要最接近物联网设备计划工作环境的物理表现,但即使是最复杂的实验室,也很难扩展到真实的环境。虚拟实验室解决了这个问题。虚拟实验室的发展超越了对难以找到(或可能不存在)的硬件依赖性的需求。使用复杂的服务虚拟化与其他关键的测试自动化工具

    • 服务虚拟化可以模拟被测设备所需的所有依赖性,以执行完整的系统测试。这包括设备使用的所有连接和协议,并对通信做出现实的响应。例如,服务虚拟化可以模拟物联网设备与之通信的企业服务器后台,以提供定期的传感器读数。同样,虚拟化可以以现实的方式控制物联网设备。
    • 服务和API测试提供了一种驱动被测设备的方式,以确保其提供的服务(和提供的API)完美无瑕地执行。这些测试可以通过自动化平台进行操作,根据需要进行性能和安全测试。
    • 运行时监控可实时检测被测设备上的错误,并捕获重要的跟踪信息。例如,在成品中可能无法检测到的内存泄漏,可以及早发现并廉价解决。
    • 测试实验室管理和分析提供了对虚拟实验室的总体控制。一旦虚拟化,整个实验室的设置可以根据需要进行复制,测试运行可以自动和重复。分析提供必要的活动和结果总结。

    边缘计算物联网生态系统如下图1所示,描述了部署嵌入式物联网设备的典型环境。传感器和控制设备将信息传达给边缘(Edge),边缘是一系列的设备或应用,它们可以接收信息,并使用逻辑将信息传达回设备或直至云端。然后,云有更高层次的逻辑,允许它根据这些信息采取行动。云是一组服务:微服务、与数据库的连接、附加逻辑或第三方服务——一个复杂的功能构件网,如下右图所示。

    1:一个典型的物联网生态系统,嵌入式设备将部署在其中。

    在物联网生态系统中进行测试的时候,需要在很多层面进行测试。例如,要测试在网关中引入的新功能,验证网关是否能够从传感器接收信息,并能够以你构建业务逻辑的方式进行通信。

    为了验证所有这些复杂性,Parasoft Virtualize(模拟所需的依赖关系)和Parasoft SOAtest(驱动测试)被用来模拟这些输入。这些工具提供了来自设备在网络上的真实调用的模拟(无论是REST/HTTP等协议,还是CoAPXMPPMQTT等物联网流行协议),并通过验证SOAtest返回的响应,测试被测设备(本例中的网关)是否与云服务进行了适当的通信。下图2显示了如何为被测边缘设备创建虚拟实验室环境的示例。

    如果有外部方式将信息传递到该网关,也可以模拟这些调用。Parasoft Virtualize旨在稳定测试环境,对请求创建可预测的响应,利用SOAtest的测试数据,充分测试网关和服务。

    最后,顶层服务可能会回传到边缘,以及回传到其他传感器和外部角色,知道你的输入的流向是否通过环境回到后端系统可能很重要。Parasoft Virtualize用于模拟接收这些呼叫到边缘(到物联网设备),然后将这些信息传回SOAtest,以确认该呼叫进行了往返,并在物联网生态系统内表现出预期的方式。Parasoft VirtualizeSOAtest的结合提供了全面的控制,可以测试整个环境,甚至在复杂的物联网生态系统内进行测试。

    2ParasoftVirtualizeSOAtest工具的作用为被测边缘设备创建一个虚拟实验室环境。

    提高质量和安全性,同时减少时间、成本和风险

    正常的测试环境是昂贵的,可能比大多数开发经理预测的还要昂贵。voke Research的一项研究发现,一个预生产实验室的平均投资是1200万美元。从时间上看,提供实验室的平均时间是18天,还有12-14天用于配置。这些实验室的建立需要花费大量的时间和金钱,即使建立了实验室,也会因为访问受限而成为测试的瓶颈。此外,物理实验室的日常运营成本也很高。在大多数情况下,复制一个物理实验室来增加测试吞吐量是成本高昂的。

    在另一篇文章中,我们将服务虚拟化的好处归结为改善对测试设备的访问,更好地控制虚拟化依赖的行为,从而降低成本并提高测试速度。以类似的方式,我们来分析一下虚拟物联网测试实验室的好处:

    • 通过更好、更完整的测试提高质量

    基于服务的测试确保关键用例得到行使和完善。自动性能测试确保了重载下的稳定性和可靠性。此外,运行时监控可确保检测和跟踪难以发现的错误。

    • 通过模拟畸形数据的自动渗透测试提高安全性

    负载测试可以模拟拒绝服务攻击,运行时监控可以检测安全漏洞。测试的可重复性可以确保每次迭代、补丁或发布都以完全相同的方式进行测试。此外,测试开发和操作(即改进和创建新的测试)被简化。

    • 通过消除完整系统测试所需的昂贵的依赖性,减少测试时间、风险和成本

    自动化提供了人工测试无法做到的重复性和一致性,同时提供了更好、更完整的测试。虚拟实验室大大减少了物理实验室设置所需的供应时间,影响了总测试时间。

    结语

    鉴于物联网设备的发展现状,需要对开发和测试流程进行改变。测试自动化是一种行之有效的方法,可以降低成本和风险。物联网设备质量和安全性提升的下一步是使用虚拟实验室,将服务虚拟化、基于服务的测试、虚拟实验室管理和运行时监控相结合。这大大降低了供应和配置成本,同时极大地提高了正在进行的测试质量。

  • 相关阅读:
    HDU 5492 Find a path
    codeforce gym 100548H The Problem to Make You Happy
    Topcoder SRM 144 Lottery
    codeforce 165E Compatible Numbers
    codeforce gym 100307H Hack Protection
    区间DP总结
    UESTC 1321 柱爷的恋爱 (区间DP)
    HDU 4283 You Are the One (区间DP)
    HDU 2476 String painter (区间DP)
    UESTC 426 Food Delivery (区间DP)
  • 原文地址:https://www.cnblogs.com/dhorde/p/14343930.html
Copyright © 2011-2022 走看看