CN101645811A - 一种自动测试嵌入式***的装置及方法 - Google Patents
一种自动测试嵌入式***的装置及方法 Download PDFInfo
- Publication number
- CN101645811A CN101645811A CN200910169786A CN200910169786A CN101645811A CN 101645811 A CN101645811 A CN 101645811A CN 200910169786 A CN200910169786 A CN 200910169786A CN 200910169786 A CN200910169786 A CN 200910169786A CN 101645811 A CN101645811 A CN 101645811A
- Authority
- CN
- China
- Prior art keywords
- test
- embedded system
- case
- test case
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种自动测试嵌入式***的装置及方法,其中,该装置包括测试控制模块和适配模块,其中,测试控制模块,用于在测试开始时,获取当前测试用例并发送给适配模块;适配模块,用于根据当前连接的嵌入式***中的设备类型,将当前测试用例依照与所述设备类型相应的格式进行报文重组,发给通讯模块;通讯模块,用于与嵌入式***之间的消息收发。本发明可以根据实际环境的情况灵活的进行模拟测试和现网测试,不再受限于具体设备的不同接口,使集成测试的效率大幅度的提高。
Description
技术领域
本发明涉及集成测试技术,特别涉及一种自动测试嵌入式***的装置及方法。
背景技术
集成测试在嵌入式软件开发过程中占据着举足轻重的地位,尤其是随着软件规模不断扩大,模块与功能不断增加,集成测试的作用就更加突显出来。但是对于一个庞大的嵌入式***来说,测试用例的数量也是成千上万的,要想完整的执行一遍测试用例也不是一件简单的事情。
在这样的情况下,一种能够实现自动化、批量化测试的工具就显得尤为重要了。开发人员或集成测试人员只需要花极少的时间去整理用例,并且在平时的工作中及时将新增的用例补充进来,到测试的时候只需要将规范的测试用例文档导入,让工具自动进行测试工作。这样,一方面在人员不足的情况下可以释放一些人力,另一方面也可以在较短的时间内将所有用例执行一遍,提高效率。
但是,目前这种针对嵌入式***的自动化测试还是受到了很多因素的限制,例如,不同设备的接口不统一,有些用例需要在完整的***或有其它硬件支持的条件下才可以执行等。因此总是不能做到非常通用,这就对自动化测试工具的普及造成了影响。
发明内容
本发明的目的在于,提供一种自动测试嵌入式***的装置,能够根据实际环境的情况灵活的进行模拟测试和现网测试,不再受限于具体设备的不同接口,使集成测试的效率大幅度的提高。
本发明的另一目的在于,提供一种自动测试嵌入式***的方法,能够根据实际环境的情况灵活的进行模拟测试和现网测试,不再受限于具体设备的不同接口,使集成测试的效率大幅度的提高。
本发明的自动测试嵌入式***的装置,包括测试控制模块和适配模块,其中,测试控制模块,用于在测试开始时,获取当前测试用例并发送给适配模块;适配模块,用于根据当前连接的嵌入式***中的设备类型,将当前测试用例依照与所述设备类型相应的格式进行报文重组,发给通讯模块;通讯模块,用于与嵌入式***之间的消息收发。
其中,进一步包括用例管理模块,用于管理测试用例,以提供给所述测试控制模块,并在多文档测试时,当一个测试用例测试完成时进行测试用例切换。
其中,所述测试控制模块,用于在收到嵌入式***返回的成功应答时,继续下发用例管理模块中下一条测试用例;还用于在收到应答超时消息时,认为应答失败,继续下发用例管理模块中下一条测试用例。
另外,测试控制模块,进一步用于在收到每一条应答消息后判断当前是否已经测试完成,在测试完成后,分析当前测试用例的执行结果,将当前测试用例的有效信息输出至报告文档;还用于在收到应答超时消息时,将当前测试用例的有效信息输出至报告文档,其中,所述当前测试用例的有效信息,包括用例编号、命令行、执行结果、执行时间、上报报文体中至少一项信息。
另外,测试控制模块,用于在收到最后一个测试用例条的条应答消息后,整理测试报告文档,其中,所述报告文档,包括统计测试用例总数、执行成功条数、部分成功条数及失败条数、分析测试效率中一项或一项以上信息。
进一步地,可以设置有模拟测试开关,用于在非模拟应答模式下,将测试装置发送来的测试用例下发给管理控制单元MCU;在模拟应答模式下,从配置文件中读取相应的模拟应答报文,其中,所述配置文件,是由测试人员设计的模拟应答报文。
本发明的自动测试嵌入式***的方法,包括下列步骤:获取当前测试用例,根据当前连接的嵌入式***中的设备类型,将当前测试用例依照与所述设备类型相应的格式进行报文重组后,发送至嵌入式***。
其中,在多文档测试时,在收到嵌入式***返回的成功应答时,继续下发下一条测试用例;在应答超时,认为应答失败,继续下发下一条测试用例。
其中,可以进一步包括下列步骤:
在收到每一条应答消息后判断当前是否已经测试完成,在测试完成后,分析当前测试用例的执行结果,将当前测试用例的有效信息输出至报告文档;在收到应答超时消息时,将当前测试用例的有效信息输出至报告文档;其中,所述报告文档,包括统计测试用例总数、执行成功条数、部分成功条数及失败条数、分析测试效率中一项或一项以上信息;并且,在收到最后一个测试用例条的条应答消息后,整理测试报告文档;其中,所述当前测试用例的有效信息,包括用例编号、命令行、执行结果、执行时间、上报报文体中至少一项信息。
另外,可以进一步包括下列步骤:嵌入式***在非模拟应答模式下,将测试装置发送来的测试用例下发给管理控制单元MCU;在模拟应答模式下,从配置文件中读取相应的模拟应答报文,其中,所述配置文件,是由测试人员设计的模拟应答报文。
本发明的有益效果是:依照本发明的自动测试嵌入式***的装置及方法,实现了自动化批量测试,并且采用了接口适配和借助嵌入式***的开关控制功能实现模拟测试与现网测试相结合的测试方法,这使得该测试方法不再受限于具体设备的不同接口,并且可以根据实际环境的情况灵活的进行模拟测试和现网测试。同时,该方法也使集成测试的效率大幅度的提高,在嵌入式***规模不断扩大,功能不断增加的情况下,不需要投入更多的人力即可较好的完成集成测试工作,可以极大的提高工作的效率。
附图说明
图1为本发明的自动测试嵌入式***的装置结构示意图;
图2为本发明实施例的自动化测试方法向下消息处理流程图;
图3为本发明实施例的自动化测试结果处理模块处理流程图;
图4为本发明实施例的嵌入式***内部消息处理流程图。
具体实施方式
以下,参考附图1~4详细描述本发明的自动测试嵌入式***的装置及方法。
如图1所示,为本发明的自动测试嵌入式***的装置示意图,该测试装置,包括:用例管理模块、测试控制模块、适配模块以及通讯模块。
其中,用例管理模块,用于管理测试用例,以提供给所述测试控制模块,并在多文档测试时,当一个测试用例测试完成时进行测试用例切换。在具体实现时,可以从导入的测试文档中获取测试用例。
测试控制模块,用于控制测试的开始、暂停和终止,在测试开始时,从用例管理模块的消息队列中获取当前测试用例并发送给适配模块。
其中,如果测试过程中由于人为原因希望暂停或终止测试,可以执行对应的暂停或终止操作,测试工具会在当前用例测试完成后暂停或终止测试。
另外,测试控制模块,在收到用例的成功应答时,继续下发用例管理模块中下一条用例,并分析每条用例的执行结果,同时将有效信息(例如用例编号、命令号、执行结果、执行时间、上报报文体等)输出至报告文档;如果应答超时消息,则认为应答失败,继续下发用例管理模块中下一条用例,并将该测试用例的有效信息(例如用例编号、命令号、执行结果、执行时间、上报报文体等)输出至报告文档。
测试控制模块,进一步用于在收到每一条应答消息后都要判断当前是否已经测试完成,如果测试已完成,则整理报告文档,统计测试用例总数,执行成功条数,部分成功条数及失败条数,分析测试效率,最后将文档保存到默认路径(可人工修改),备测试人员查看。如果测试未完成则通知测试控制模块继续下发命令。
适配模块,用于为了解决各种不同嵌入式***接口不统一而设计的,当一条测试用例到达适配模块时,适配模块会根据当前连接的设备类型,按照对应的格式去重组报文,并将正确的报文发给通讯模块。
通讯模块,用于测试装置与嵌入式***之间的消息收发,将下行消息发给嵌入式***,将嵌入式***返回的消息发给测试控制模块。
另外,在本发明测试的嵌入式***中,需要设置一个模拟测试开关。
如果待测***是在一个完整的测试***环境下,即测试需要的所有软硬件环境都满足的情况下,关闭模拟测试开关,这时测试命令都是真正下发到各个实际单板上,返回的结果也是实际的单板应答报文。这种测试不仅检查了嵌入式***处理流程的正确性,而且可以通过与实际管理控制单元(ManagementControl Unit,MCU)的交互检查通讯口是否正常,通过MCU返回报文检查各MCU应答结果的正确性。
但是大多数情况下测试一个MCU上运行的嵌入式***时,并没有完整的测试环境,很多跟其它MCU相关的命令无法测试。这时只需要将模拟测试开关打开,当嵌入式***接收到一条测试命令时,判断如果当前处于模拟测试状态,则从配置文件中读取对应的模拟应答报文,转入应答处理流程。这种测试方法旨在测试特定嵌入式***在消息处理流程上的正确性。
其中,配置文件,是由测试人员设计的模拟应答报文,该文件可以通过文件传输协议(File Transfer Protocol,ftp)或简单文件传输协议(Trivial FileTransfer Protocol,tftp)的方式传送到嵌入式***的存储空间,支持删除和更新操作。
如图2所示,本发明实施例的自动化测试方法向下消息处理流程图,包括下列步骤:
步骤100:首先要使测试工具与待测嵌入式***建立连接,并维护链路使其一直处于连接状态,以保证消息的正常收发;
其中,在步骤100中,在与待测嵌入式***建立连接时,根据接收的消息中包含的待测嵌入式***的相关信息确定该嵌入式***的类型。
步骤200:检查是否已经导入测试用例文档,如果没有导入,则提示用户导入用例文档;
步骤300:从用例管理模块的消息队列中读取当前队列中的第一条消息;
步骤400:设置一个超时定时器,在规定时间内消息没有应答则进行超时处理——清除该定时器,然后返回步骤300;
步骤500:下发给适配层,并根据当前待测的嵌入式***的类型进行对应的消息适配;
步骤600:将适配后的包含测试用例的消息下发给嵌入式***。
上述步骤的核心是定时处理和消息适配,通过定时处理可以及时放弃那些已经失效的用例,避免在一条错误的用例上浪费大量的时间,保证了后续用例的顺利进行;消息适配又使该方法不拘泥于某一特定设备,因此该方法可以灵活运用到各类嵌入式***的自动化测试中。
图3为本发明实施例的自动化测试结果处理模块处理流程图。如图3所示,判断当前是模拟应答模式还是非模拟应答模式,如果是非模拟应答模式,按照正常的流程下发给MCU;如果是模拟应答模式,则去配置文件中读取对应命令的模拟应答报文,然后转入回调处理。
如图4所示,为自动化测试结果处理模块处理流程图。如果是网元管理器的应答消息,则判断执行结果是成功还是失败,并将该测试用例的编号、下发报文、执行结果、应答报文体、执行时间等整理保存到测试报告文档中,同时应该清除该用例对应的定时器;最后判断当前用例是否最后一条用例,如果是最后一条则需要整理测试报告文档,统计测试成功数目,失败数目,部分成功数目及测试效率等有用数据,如果不是最后一条用例,则通知测试控制模块继续下发下一条测试用例,并继续从消息队列中取下一条消息。
如果是测试控制模块发来的超时处理消息,则记录该用例的编号,下发报文及超时错误等到测试报告文档中,同时判断当前用例是否为最后一条用例,如果是最后一条则需要整理测试报告文档,否则继续从消息队列中取下一条消息。
综上所述,依照本发明的自动测试嵌入式***的装置及方法,实现了自动化批量测试,并且采用了接口适配和借助嵌入式***的开关控制功能实现模拟测试与现网测试相结合的测试方法,这使得该测试方法不再受限于具体设备的不同接口,并且可以根据实际环境的情况灵活的进行模拟测试和现网测试。同时,该方法也使集成测试的效率大幅度的提高,在嵌入式***规模不断扩大,功能不断增加的情况下,不需要投入更多的人力即可较好的完成集成测试工作,可以极大的提高工作的效率。
以上是为了使本领域普通技术人员理解本发明,而对本发明所进行的详细描述,但可以想到,在不脱离本发明的权利要求所涵盖的范围内还可以做出其它的变化和修改,这些变化和修改均在本发明的保护范围内。
Claims (10)
1.一种自动测试嵌入式***的装置,其特征在于,包括测试控制模块和适配模块,其中,
测试控制模块,用于在测试开始时,获取当前测试用例并发送给适配模块;
适配模块,用于根据当前连接的嵌入式***中的设备类型,将当前测试用例依照与所述设备类型相应的格式进行报文重组,发给通讯模块;
通讯模块,用于与嵌入式***之间的消息收发。
2.如权利要求1所述的自动测试嵌入式***的装置,其特征在于,进一步包括用例管理模块,用于管理测试用例,以提供给所述测试控制模块,并在多文档测试时,当一个测试用例测试完成时进行测试用例切换。
3.如权利要求1或2所述的自动测试嵌入式***的装置,其特征在于,所述测试控制模块,用于在收到嵌入式***返回的成功应答时,继续下发用例管理模块中下一条测试用例;还用于在收到应答超时消息时,认为应答失败,继续下发用例管理模块中下一条测试用例。
4.如权利要求3所述的自动测试嵌入式***的装置,其特征在于,所述测试控制模块,进一步用于在收到每一条应答消息后判断当前是否已经测试完成,在测试完成后,分析当前测试用例的执行结果,将当前测试用例的有效信息输出至报告文档;还用于在收到应答超时消息时,将当前测试用例的有效信息输出至报告文档,其中,所述当前测试用例的有效信息,包括用例编号、命令行、执行结果、执行时间、上报报文体中至少一项信息。
5.如权利要求4所述的自动测试嵌入式***的装置,其特征在于,所述测试控制模块,用于在收到最后一个测试用例条的条应答消息后,整理测试报告文档,其中,所述报告文档,包括统计测试用例总数、执行成功条数、部分成功条数及失败条数、分析测试效率中一项或一项以上信息。
6.如权利要求5所述的自动测试嵌入式***的装置,其特征在于,所述嵌入式***,设置有模拟测试开关,用于在非模拟应答模式下,将测试装置发送来的测试用例下发给管理控制单元MCU;在模拟应答模式下,从配置文件中读取相应的模拟应答报文,其中,所述配置文件,是由测试人员设计的模拟应答报文。
7.一种自动测试嵌入式***的方法,其特征在于,包括下列步骤:获取当前测试用例,根据当前连接的嵌入式***中的设备类型,将当前测试用例依照与所述设备类型相应的格式进行报文重组后,发送至嵌入式***。
8.如权利要求7所述的自动测试嵌入式***的方法,其特征在于,进一步包括下列步骤:在多文档测试时,在收到嵌入式***返回的成功应答时,继续下发下一条测试用例;在应答超时,认为应答失败,继续下发下一条测试用例。
9.如权利要求8所述的自动测试嵌入式***的方法,其特征在于,进一步包括下列步骤:
在收到每一条应答消息后判断当前是否已经测试完成,在测试完成后,分析当前测试用例的执行结果,将当前测试用例的有效信息输出至报告文档;
在收到应答超时消息时,将当前测试用例的有效信息输出至报告文档;其中,所述报告文档,包括统计测试用例总数、执行成功条数、部分成功条数及失败条数、分析测试效率中一项或一项以上信息;
并且,在收到最后一个测试用例条的条应答消息后,整理测试报告文档;
其中,所述当前测试用例的有效信息,包括用例编号、命令行、执行结果、执行时间、上报报文体中至少一项信息。
10.如权利要求9所述的自动测试嵌入式***的方法,其特征在于,进一步包括下列步骤:嵌入式***在非模拟应答模式下,将测试装置发送来的测试用例下发给管理控制单元MCU;在模拟应答模式下,从配置文件中读取相应的模拟应答报文,其中,所述配置文件,是由测试人员设计的模拟应答报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101697869A CN101645811B (zh) | 2009-09-02 | 2009-09-02 | 一种自动测试嵌入式***的装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101697869A CN101645811B (zh) | 2009-09-02 | 2009-09-02 | 一种自动测试嵌入式***的装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101645811A true CN101645811A (zh) | 2010-02-10 |
CN101645811B CN101645811B (zh) | 2012-07-04 |
Family
ID=41657536
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101697869A Expired - Fee Related CN101645811B (zh) | 2009-09-02 | 2009-09-02 | 一种自动测试嵌入式***的装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101645811B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105141481A (zh) * | 2015-09-21 | 2015-12-09 | 烽火通信科技股份有限公司 | 一种网元管理单元的自动化测试方法及*** |
CN105528294A (zh) * | 2015-12-29 | 2016-04-27 | 广东金赋信息科技有限公司 | 一种接口测试用例自动生成的方法及*** |
CN109783298A (zh) * | 2019-01-18 | 2019-05-21 | 上海磐启微电子有限公司 | 一种流程灵活可控的软硬件协同SoC验证方法 |
CN110825624A (zh) * | 2019-08-06 | 2020-02-21 | 厦门亿联网络技术股份有限公司 | 一种嵌入式设备的模块测试***及方法 |
CN115562250A (zh) * | 2022-11-09 | 2023-01-03 | 科大讯飞股份有限公司 | 微控制单元功能测试方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100587976B1 (ko) * | 2004-11-25 | 2006-06-08 | 한국전자통신연구원 | 휴대 단말기의 하드웨어 추상화 계층 검증 장치 및 그운용 방법 |
CN101005411B (zh) * | 2006-12-29 | 2010-05-19 | 华为技术有限公司 | 电路型数据业务自动化测试***、装置及方法 |
CN101212357B (zh) * | 2006-12-31 | 2010-09-15 | 亿阳信通股份有限公司 | 一种接口的测试方法和装置 |
CN101114954A (zh) * | 2007-09-06 | 2008-01-30 | 中兴通讯股份有限公司 | 协议测试装置 |
CN101330329B (zh) * | 2008-07-29 | 2012-03-28 | 中兴通讯股份有限公司 | 自适应测试方法和*** |
-
2009
- 2009-09-02 CN CN2009101697869A patent/CN101645811B/zh not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105141481A (zh) * | 2015-09-21 | 2015-12-09 | 烽火通信科技股份有限公司 | 一种网元管理单元的自动化测试方法及*** |
CN105141481B (zh) * | 2015-09-21 | 2018-05-29 | 烽火通信科技股份有限公司 | 一种网元管理单元的自动化测试方法及*** |
CN105528294A (zh) * | 2015-12-29 | 2016-04-27 | 广东金赋信息科技有限公司 | 一种接口测试用例自动生成的方法及*** |
CN105528294B (zh) * | 2015-12-29 | 2018-05-25 | 广东金赋科技股份有限公司 | 一种接口测试用例自动生成的方法及*** |
CN109783298A (zh) * | 2019-01-18 | 2019-05-21 | 上海磐启微电子有限公司 | 一种流程灵活可控的软硬件协同SoC验证方法 |
CN110825624A (zh) * | 2019-08-06 | 2020-02-21 | 厦门亿联网络技术股份有限公司 | 一种嵌入式设备的模块测试***及方法 |
CN115562250A (zh) * | 2022-11-09 | 2023-01-03 | 科大讯飞股份有限公司 | 微控制单元功能测试方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101645811B (zh) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101789889B (zh) | 一种自动测试通信设备的方法及*** | |
CN100456191C (zh) | 一种卫星自动化测试平台及测试方法 | |
CN110071577B (zh) | 变电站监控信息验收方法及*** | |
CN102291277B (zh) | 智能变电站间隔装置的自动测试***及方法 | |
CA1263759A (en) | Arrangement for on-line diagnostic testing of an off- line standby processor in a duplicated processor configuration | |
CN100424605C (zh) | 基于can总线的分布式控制网络智能管理装置及管理方法 | |
CN101645811B (zh) | 一种自动测试嵌入式***的装置及方法 | |
CN107562635A (zh) | 嵌入式软件测试辅助*** | |
CN108322348B (zh) | 变电站监控信息自动验收信号触发运行子***及方法 | |
CN103249069B (zh) | 移动终端的测试方法及测试设备、移动终端的测试*** | |
CN105553782B (zh) | 通讯链路测试方法和*** | |
CN107992367A (zh) | 一种Modbus串口数据处理方法 | |
CN108052094A (zh) | 一种扩展卡识别方法、装置及变频器 | |
CN107817401A (zh) | 一种用电信息采集***的压力测试方法及装置 | |
CN101668036B (zh) | 分布式设备的模拟***和模拟分布式设备处理业务的方法 | |
CN112383439A (zh) | 一种智能燃气表空中升级***及升级方法 | |
CN101170785A (zh) | 使用tcl进行基站软件测试的装置和方法 | |
CN111813655A (zh) | 一种埋点测试方法、装置、埋点管理***和存储介质 | |
CN111193638A (zh) | 一种基于Linux平台的网卡自动化测试方法及装置 | |
CN105843675A (zh) | 线程退出方法和装置 | |
CN109426643A (zh) | Usb接口请求调度方法、装置及设备 | |
CN102571412B (zh) | 嵌入式分布式***目标机服务器 | |
CN100499513C (zh) | 一种电信增值业务综合测试***和测试方法 | |
CN107832239A (zh) | 一种基于ahb总线的传输控制方法及装置 | |
CN107679298A (zh) | 一种基于Petri网的1394b总线负载仿真建模方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120704 Termination date: 20190902 |
|
CF01 | Termination of patent right due to non-payment of annual fee |