当前位置: 首页 > 专利查询>伊姆西公司专利>正文

用于软件测试的方法和计算设备技术

技术编号:13591705 阅读:94 留言:0更新日期:2016-08-26 01:02
本发明专利技术的实施例提供了一种用于软件测试的方法和计算设备。该方法包括通过计算设备提供至少一个虚拟硬件组件,每个虚拟硬件组件模拟与待测试的软件相关联的硬件组件的行为。该方法还包括根据至少一个虚拟硬件组件模拟的行为来测试待测试的软件。根据本发明专利技术的实施例,通过提供能够模拟实际硬件组件的行为的虚拟硬件组件来执行软件测试。这样的软件测试方式使得软件开发与硬件开发可以并列地被执行,并且针对不同硬件组件的不同待测试软件可以并列地被测试,从而加快了软件开发的进度并且缩短了产品开发的耗时。

【技术实现步骤摘要】

本专利技术的各种实施方式涉及计算机领域,并且更具体地,涉及用于软件测试的方法和计算设备
技术介绍
产品开发过程(例如,各种电子器件和设备的开发过程)通常包括硬件开发和软件开发。硬件开发主要涉及对于产品的硬件组件的选择和组装、硬件功能的开发和调试等。软件开发主要涉及与硬件组件的有关的软件的开发、以及对所开发的软件的测试以适配硬件组件。在常规产品开发过程中,软件开发主要取决于硬件开发的完成。例如,通常在已经完成整体硬件开发之后,硬件开发部门将生产的硬件工程板传送给软件部门,以便于软件部门在硬件工程板上对开发的软件进行测试。或者,例如在每个阶段(例如,在工程验证测试(Engineering Verification Testing,EVT)阶段、在关键设计验证测试(critical Design Verification and Testing,cDVT)阶段、和在设计验证测试(Design Verification and Testing,DVT)阶段)的硬件开发完成之后,将开发的硬件工程板交由软件部门执行软件测试。通常软件部门的不同软件开发人员或软件开发团队开发与不同硬件组件关联的多个软件,不同的软件需要一个或多个硬件工程板用于测试目的。然而,这样的产品开发过程通常会导致较高的时间成本和经济成本。因为软件开发依赖于硬件开发的完成,因而完成产品开发的耗时较长。而且,用于软件测试的大量硬件工程板需要被生产、传送以及在使用中的维护,这增加了产品开发的经济成本。此外,如
果在软件测试过程中发现了硬件的问题,还将导致硬件开发的重新执行以及硬件工程板的重新生产,这是对时间和经济成本的双重增加。
技术实现思路
鉴于上述以及其他潜在问题,本专利技术的实施方式提供了用于软件测试的方法和计算设备。根据本专利技术的第一方面,提供了一种用于软件测试的方法。该方法包括通过计算设备提供至少一个虚拟硬件组件,每个虚拟硬件组件模拟与待测试的软件相关联的硬件组件的行为。该方法还包括根据至少一个虚拟硬件组件模拟的行为来测试待测试的软件。在本专利技术的一个实施例中,该计算设备至少具有中央处理器和存储器。在本专利技术的一个实施例中,该方法还包括通过计算设备提供与至少一个虚拟硬件组件相对应的虚拟总线,以使得至少一个虚拟硬件组件经由虚拟总线与中央处理器和存储器连接。在本专利技术的一个实施例中,该计算设备包括已经开发的与软件相关联的硬件组件。在本专利技术的一个实施例中,多个虚拟硬件组件通过计算设备而被提供。在本专利技术的一个实施例中,根据虚拟硬件组件模拟的行为来测试软件包括根据多个虚拟硬件组件模拟的行为来并行地测试软件。在本专利技术的一个实施例中,模拟的硬件组件的行为包括硬件组件的正常行为和出错行为中的至少一项。根据本专利技术的第二方面,提供了一种用于软件测试的计算设备。该计算设备包括虚拟硬件组件供应单元,被配置为提供至少一个虚拟硬件组件,每个虚拟硬件组件模拟与待测试的软件相关联的硬件组件的行为。该计算设备还包括软件测试单元,被配置为根据至少一个虚拟硬件组件模拟的行为来测试待测试的软件。在本专利技术的一个实施例中,该计算设备至少具有中央处理器和存储器。在本专利技术的一个实施例中,该计算设备还包括虚拟总线供应单元,被配置为提供与至少一个虚拟硬件组件相对应的虚拟总线,以使得至少一个虚拟硬件组件经由虚拟总线与中央处理器和存储器连接。在本专利技术的一个实施例中,该计算设备包括已经开发的与软件相关联的硬件组件。在本专利技术的一个实施例中,虚拟硬件组件供应单元提供多个虚拟硬件组件。在本专利技术的一个实施例中,软件测试单元进一步被配置为根据多个虚拟硬件组件模拟的行为来并行地测试软件。在本专利技术的一个实施例中,模拟的硬件组件的行为包括硬件组件的正常行为和出错行为中的至少一项。通过下文描述将会理解,根据本专利技术的实施例,通过提供能够模拟实际硬件组件的行为的虚拟硬件组件来执行软件测试。这样的软件测试方式使得软件开发与硬件开发可以并列地被执行,并且针对不同硬件组件的不同待测试软件可以并列地被测试,从而加快了软件开发的进度并且缩短了产品开发的耗时。而且,由于无需生产、传送和维护用于软件测试目的的硬件工程板,这是一种经济成本节约的方式。此外,虚拟硬件组件不仅可以模拟硬件组件的正常行为,还可以模拟硬件组件的错误行为,从而有效地测试软件的出错处理能力并且提高软件的鲁棒性。附图说明通过结合附图对本公开的示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。图1示出了根据本专利技术的实施例的用于软件测试的方法的流程
图;图2示出了根据本专利技术的实施例的用于软件测试的硬件模拟平台的示意图;图3示出了根据本专利技术的实施例的用于软件测试的计算设备的框图;以及图4示出了适于用来实践本专利技术实施方式的计算机系统的示意性框图。具体实施方式下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。在对示例实施例的描述中,术语“包括”及其类似用语表示开放性包含,即“包括但不限于”。术语“基于”表示“至少部分地基于”。术语“一个实施例”或“该实施例”表示“至少一个实施例”。下面将详细描述本专利技术的实施例。通过下文描述将会理解,本专利技术的基本构思之一在于:在硬件开发完成之前,提供一种硬件模拟平台。该平台可以虚拟相应的硬件组件,从而软件测试可以基于虚拟硬件组件来执行而不必等待硬件开发完成。这样的软件测试方式使得软件开发与硬件开发可以并列地被执行、并且针对不同硬件组件的不同待测试软件可以并列地被测试,从而加快了软件开发的进度并且缩短了产品开发的耗时。而且,由于无需生产和传送用于软件测试目的的硬件板,这是一种经济成本节约的方式。此外,虚拟硬件组件不仅可以模拟硬件组件的正常行为,还可以模拟硬件组件的错误行为,从而有效地测试软件的出错处理能力并且提高软件的鲁棒性。首先参见图1,其示出了根据本专利技术的实施例的用于软件测试的
方法100的流程图。应理解的是,方法100还可以包括附加的步骤和/或省略执行示出的步骤。本专利技术的范围在此方面不受限制。在方法100的步骤S101,通过计算设备提供至少一个虚拟硬件组件,每个虚拟硬件组件模拟与待测试的软件相关联的硬件组件的行为。如以上提及的,为了加快软件开发的进度并且缩短整体产品开发的耗时,本专利技术的实施例提供了一种允许在计算设备上的硬件模拟平台。该平台在示例实施例中可以基于虚拟机基础架构(例如利用虚拟化工具QEMU)来实施并且可以提供虚拟硬件组件。为了能够提供虚拟硬件组件,在本专利技术的实施例中,计算设备至少具有中央处理器(CPU)和存储器(Memory)。在另外的实施例中,计算设备还可以包括其他必要的组成部件。在进一步的实施例中,该计算设备可以是任意的台式计算机、便携式计算机、膝上型计算机、手持设备、蜂窝电话、智能电话、个人数字助理、以及具有处理能力的任何其他适当的设备。在本专利技术的实施例中,所提供的虚拟硬件组件可以模拟与待本文档来自技高网
...

【技术保护点】
一种用于软件测试的方法,包括:通过计算设备提供至少一个虚拟硬件组件,每个虚拟硬件组件模拟与待测试的软件相关联的硬件组件的行为;以及根据所述至少一个虚拟硬件组件模拟的行为来测试所述待测试的软件。

【技术特征摘要】
1.一种用于软件测试的方法,包括:通过计算设备提供至少一个虚拟硬件组件,每个虚拟硬件组件模拟与待测试的软件相关联的硬件组件的行为;以及根据所述至少一个虚拟硬件组件模拟的行为来测试所述待测试的软件。2.根据权利要求1所述的方法,其中所述计算设备至少具有中央处理器和存储器。3.根据权利要求2所述的方法,进一步包括:通过所述计算设备提供与所述至少一个虚拟硬件组件相对应的虚拟总线,以使得所述至少一个虚拟硬件组件经由所述虚拟总线与所述中央处理器和所述存储器连接。4.根据权利要求1所述的方法,其中所述计算设备包括已经开发的与所述软件相关联的所述硬件组件。5.根据权利要求1至4中任一项所述的方法,其中通过所述计算设备提供多个虚拟硬件组件;以及其中根据所述虚拟硬件组件模拟的行为来测试所述软件包括:根据所述多个虚拟硬件组件模拟的行为来并行地测试所述软件。6.根据权利要求1至4中任一项所述的方法,其中模拟的所述硬件组件的行为包括所述硬件组件的正常行为和出错行为中的至少一项。7.一种用于软件测试的计算设备,包括...

【专利技术属性】
技术研发人员:夏国武李浩王霖王超王佳银田力杨晓东钱伟伟
申请(专利权)人:伊姆西公司
类型:发明
国别省市:美国;US

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

1