CN101216804A - 一种测试装置和方法 - Google Patents
一种测试装置和方法 Download PDFInfo
- Publication number
- CN101216804A CN101216804A CNA200810056180XA CN200810056180A CN101216804A CN 101216804 A CN101216804 A CN 101216804A CN A200810056180X A CNA200810056180X A CN A200810056180XA CN 200810056180 A CN200810056180 A CN 200810056180A CN 101216804 A CN101216804 A CN 101216804A
- Authority
- CN
- China
- Prior art keywords
- test
- script
- command
- interface
- file
- 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
Abstract
本发明所提供的测试装置和方法,由于设置了能够识别测试接口的脚本处理实体,并且将测试命令表述为测试脚本文件的形式;因此,要进行测试时,可以对测试脚本文件进行解释以得到测试命令,由脚本处理实体调用测试命令所对应的测试接口函数以实现系统测试。显然,脚本化的测试方式能够提供好的封装性和可测试性;其次,由于测试接口包括需要测试的内部功能接口,因此可以实现更高层次的测试(如:进行较为彻底的逻辑测试等),提高了测试的灵活性;并且,脚本化的测试方式省去了冗长的编译过程,降低了测试的复杂度。
Description
技术领域
本发明涉及测试技术,具体涉及一种测试装置和方法。
背景技术
目前,从底层的平台驱动测试到最后的集成测试,软件测试包括很多层次。随着嵌入式系统的广泛发展,嵌入式应用的功能和性能测试已成为比较重要的问题。由于嵌入式的特点,导致一些传统软件的测试方法不一定能适用于嵌入式系统的测试,尤其在后期的集成测试中。
对于集成测试而言,如果可以基于计算机上的图形界面实现控制,一般采用自动化工具实现测试过程。这种测试方法过分依赖于自动化工具,并且需要应用程序提供可供操作的界面元素;对于没有界面的应用,该方法就无法正常使用。再有,通过所述自动化工具所进行的测试,只能通过该自动化工具所提供的有限的函数接口进行测试,对于在实际应用中比较关注的内部功能接口,则无法进行更高层次的测试(如:进行较为彻底的逻辑测试等)。另外,测试命令的改变将导致测试代码的重新编译,这将给测试过程带来过大的工作量,因而增加测试过程的复杂度。
显然,目前的嵌入式测试方式实际上还处于黑盒测试阶段,其灵活性较低,复杂度较高,并且也无法进行更高层次的测试。
发明内容
有鉴于此,本发明的主要目的在于提供一种测试装置和方法,以提高测试灵活性,降低测试复杂度。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供了一种测试装置,包括依次相连的脚本引擎、测试脚本封装体、应用逻辑单元;其中,所述脚本引擎,用于对收到的测试脚本文件进行解释,并将解释所得的测试命令发送给所述测试脚本封装体;所述测试脚本封装体,用于调用收到的测试命令在所述应用逻辑单元中所对应的测试接口函数;所述应用逻辑单元,用于根据所述测试接口函数的调用进行系统测试。
其中,所述测试脚本封装体设置于脚本封装单元中,该脚本封装单元中设置有可对接口文件进行封装的脚本封装自动化程序。所述接口为应用编程接口API。
该装置设置于嵌入式设备中。
上述方案中,所述脚本引擎进一步与测试管理单元相连;所述测试管理单元,用于向所述脚本引擎发送测试脚本文件;所述测试脚本封装体、脚本引擎,进一步用于依次将来自所述应用逻辑单元的测试结果返回给所述测试管理单元。
本发明还提供了一种测试方法,包括:
设置能够识别测试接口的脚本处理实体,并将测试命令表述为测试脚本文件的形式;对测试脚本文件进行解释以得到测试命令,由脚本处理实体调用测试命令所对应的测试接口函数进行系统测试。
其中,所述将测试命令表述为测试脚本文件的方法为:将进行测试时所需要的测试命令以脚本文件的形式编写,生成测试脚本文件。
调用所述测试接口函数进行系统测试的方法为:调用所述测试命令在应用逻辑单元中所对应的测试接口函数,由应用逻辑单元根据所述测试接口函数的调用进行系统测试。
所述接口是API,所述脚本处理实体是脚本封装单元所生成的测试脚本封装体。
上述方案,进一步包括返回测试结果。
可见,本发明所提供的测试装置和方法,由于设置了能够识别测试接口的脚本处理实体,并且将测试命令表述为测试脚本文件的形式;因此,要进行测试时,可以对测试脚本文件进行解释以得到测试命令,由脚本处理实体调用测试命令所对应的测试接口函数以实现系统测试。
显然,脚本化的测试方式能够提供好的封装性和可测试性;其次,由于测试接口包括需要测试的内部功能接口,因此可以实现更高层次的测试(如:进行较为彻底的逻辑测试等),提高了测试的灵活性;并且,脚本化的测试方式省去了冗长的编译过程,降低了测试的复杂度。
附图说明
图1为本发明一实施例的测试装置图;
图2为本发明一实施例的测试流程图;
图3为本发明的测试流程简图。
具体实施方式
下面结合附图对本发明技术详细描述。
参见图1,图1为本发明一实施例的测试装置图。图1中,测试管理单元、脚本引擎、测试脚本封装体、应用逻辑单元依次相连,这些器件均可设置、应用于嵌入式设备中。其中,脚本引擎中包含能够解析脚本的引擎库,该引擎库可以支持脚本引擎对脚本进行正确解释;测试脚本封装体可以实现测试命令与接口函数之间的翻译;应用逻辑单元可执行具体的测试操作;测试脚本封装体是由脚本封装单元所生成的能够识别测试接口的脚本处理实体,存在于脚本封装单元等通信实体中。
具体应用时,选择在进行测试时需要应用到的测试应用编程接口(API),并将所选择的测试API生成接口文件,再将该接口文件输入到脚本封装单元(其中设置有脚本封装自动化程序)中。脚本封装单元对收到的接口文件进行分析、封装等处理,得到以系统语言源文件形式存在的测试脚本封装体。
所述测试API包括需要测试的内部功能接口等。
除了预先设置有测试脚本封装体以外,还需要设置能够处理脚本操作的脚本引擎;并且,还需要将进行测试时所需要的测试命令以脚本文件的形式编写,生成测试脚本文件。
当需要进行测试时,将测试脚本文件输入测试管理单元,由测试管理单元将收到的测试脚本文件转发给脚本引擎;脚本引擎对收到的测试脚本文件进行解释,从测试脚本文件中获得测试命令,再将得到的测试命令发送给测试脚本封装体。针对收到的测试命令,测试脚本封装体可以识别该命令在应用逻辑单元中所对应的接口函数,并调用该接口函数。之后,被调用的接口函数则执行自身被定义的操作,在应用逻辑单元中实现系统测试。
完成测试后,测试脚本封装体将应用逻辑单元所反馈的测试结果发送给脚本引擎,脚本引擎将收到的测试结果上报给测试管理单元,用户就可以从测试管理单元中获知测试结果。
在实际应用中,还可以修改测试脚本文件中的测试命令,并将修改后的测试脚本文件发送给脚本引擎,以实现新的测试。另外,在嵌入式设备中,测试脚本封装体和脚本引擎通常链接于主控文件中,用户可以通过主控文件实现对测试脚本封装体和脚本引擎的应用。
由针对图1的描述可见,由于设置了能够识别测试接口的脚本处理实体,并且将测试命令表述为测试脚本文件的形式;因此,要进行测试时,可以对测试脚本文件进行解释以得到测试命令,由脚本处理实体调用测试命令所对应的测试接口函数以实现系统测试。
显然,脚本化的测试方式能够提供好的封装性和可测试性;其次,由于测试接口包括需要测试的内部功能接口,因此可以实现更高层次的测试(如:进行较为彻底的逻辑测试等),提高了测试的灵活性;并且,脚本化的测试方式省去了冗长的编译过程,降低了测试的复杂度。
针对图1的描述可以以图2的流程表示。参见图2,图2为本发明一实施例的测试流程图,该流程包括以下步骤:
步骤201:根据测试API生成接口文件,根据接口文件生成测试脚本封装体。
步骤202:根据测试命令生成测试脚本文件。
步骤203:通过测试管理单元向脚本引擎转发测试脚本文件,由脚本引擎对测试脚本文件进行解释,得到测试命令。
步骤204:测试脚本封装体调用测试命令在应用逻辑单元中所对应的接口函数,由该接口函数实现系统测试。
由图1、图2可见,整个测试过程中的关键操作如图3所示。参见图3,图3为本发明的测试流程简图,该流程包括以下步骤:
步骤301:设置能够识别测试接口的脚本处理实体,并将测试命令表述为测试脚本文件的形式。
步骤302:对测试脚本文件进行解释以得到测试命令,由脚本处理实体调用测试命令所对应的测试接口函数以实现系统测试。
由以上所述可见,本发明所提供的测试装置和方法,均可提高测试灵活性,降低测试复杂度,并且能够进行更高层次的测试。
Claims (10)
1.一种测试装置,其特征在于,该装置包括依次相连的脚本引擎、测试脚本封装体、应用逻辑单元;其中,
所述脚本引擎,用于对收到的测试脚本文件进行解释,并将解释所得的测试命令发送给所述测试脚本封装体;
所述测试脚本封装体,用于调用收到的测试命令在所述应用逻辑单元中所对应的测试接口函数;
所述应用逻辑单元,用于根据所述测试接口函数的调用进行系统测试。
2.根据权利要求1所述的装置,其特征在于,所述测试脚本封装体设置于脚本封装单元中,该脚本封装单元中设置有可对接口文件进行封装的脚本封装自动化程序。
3.根据权利要求1所述的装置,其特征在于,该装置设置于嵌入式设备中。
4.根据权利要求1所述的装置,其特征在于,所述接口为应用编程接口API。
5.根据权利要求1至4任一项所述的装置,其特征在于,所述脚本引擎进一步与测试管理单元相连;
所述测试管理单元,用于向所述脚本引擎发送测试脚本文件;
所述测试脚本封装体、脚本引擎,进一步用于依次将来自所述应用逻辑单元的测试结果返回给所述测试管理单元。
6.一种测试方法,其特征在于,该方法包括:
设置能够识别测试接口的脚本处理实体,并将测试命令表述为测试脚本文件的形式;对测试脚本文件进行解释以得到测试命令,由脚本处理实体调用测试命令所对应的测试接口函数进行系统测试。
7.根据权利要求6所述的方法,其特征在于,所述将测试命令表述为测试脚本文件的方法为:
将进行测试时所需要的测试命令以脚本文件的形式编写,生成测试脚本文件。
8.根据权利要求6所述的方法,其特征在于,调用所述测试接口函数进行系统测试的方法为:
调用所述测试命令在应用逻辑单元中所对应的测试接口函数,由应用逻辑单元根据所述测试接口函数的调用进行系统测试。
9.根据权利要求6所述的方法,其特征在于,所述接口是API,所述脚本处理实体是脚本封装单元所生成的测试脚本封装体。
10.根据权利要求6至9任一项所述的方法,其特征在于,进一步返回测试结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810056180XA CN101216804B (zh) | 2008-01-14 | 2008-01-14 | 一种测试装置和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810056180XA CN101216804B (zh) | 2008-01-14 | 2008-01-14 | 一种测试装置和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101216804A true CN101216804A (zh) | 2008-07-09 |
CN101216804B CN101216804B (zh) | 2011-04-20 |
Family
ID=39623239
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810056180XA Expired - Fee Related CN101216804B (zh) | 2008-01-14 | 2008-01-14 | 一种测试装置和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101216804B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101930359A (zh) * | 2009-06-22 | 2010-12-29 | 北京天融信网络安全技术有限公司 | 一种在自动化测试中实现设备模式切换的方法和装置 |
CN103064786A (zh) * | 2012-12-14 | 2013-04-24 | 北京思特奇信息技术股份有限公司 | 一种基于多协议支撑的逻辑层自动化测试系统 |
CN103294589A (zh) * | 2012-02-22 | 2013-09-11 | 中国移动通信集团公司 | 一种测试用例的实现方法、系统及中间适配装置 |
CN103544049A (zh) * | 2012-07-10 | 2014-01-29 | 百度在线网络技术(北京)有限公司 | 测试环境的自动处理方法、测试的自动化实现方法及装置 |
CN106155848A (zh) * | 2015-03-24 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种测试方法和设备 |
-
2008
- 2008-01-14 CN CN200810056180XA patent/CN101216804B/zh not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101930359A (zh) * | 2009-06-22 | 2010-12-29 | 北京天融信网络安全技术有限公司 | 一种在自动化测试中实现设备模式切换的方法和装置 |
CN101930359B (zh) * | 2009-06-22 | 2014-04-16 | 北京天融信网络安全技术有限公司 | 一种在自动化测试中实现设备模式切换的方法和装置 |
CN103294589A (zh) * | 2012-02-22 | 2013-09-11 | 中国移动通信集团公司 | 一种测试用例的实现方法、系统及中间适配装置 |
CN103294589B (zh) * | 2012-02-22 | 2017-02-01 | 中国移动通信集团公司 | 一种测试用例的实现方法、系统及中间适配装置 |
CN103544049A (zh) * | 2012-07-10 | 2014-01-29 | 百度在线网络技术(北京)有限公司 | 测试环境的自动处理方法、测试的自动化实现方法及装置 |
CN103064786A (zh) * | 2012-12-14 | 2013-04-24 | 北京思特奇信息技术股份有限公司 | 一种基于多协议支撑的逻辑层自动化测试系统 |
CN103064786B (zh) * | 2012-12-14 | 2016-08-03 | 北京思特奇信息技术股份有限公司 | 一种基于多协议支撑的逻辑层自动化测试系统 |
CN106155848A (zh) * | 2015-03-24 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种测试方法和设备 |
CN106155848B (zh) * | 2015-03-24 | 2019-09-03 | 阿里巴巴集团控股有限公司 | 一种测试方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN101216804B (zh) | 2011-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102402427B (zh) | 一种Java应用程序的更新方法及装置 | |
US10331425B2 (en) | Automated source code adaption to inject features between platform versions | |
CN101382915B (zh) | 一种软件调试系统及调试方法 | |
CN105260315A (zh) | 一种在嵌入式系统进程中调试日志的方法 | |
CN101216804B (zh) | 一种测试装置和方法 | |
US20150040112A1 (en) | Enabling Interoperability Between Software Applications By Utilizing Partial Binaries | |
US8464230B2 (en) | Methods and systems to implement non-ABI conforming features across unseen interfaces | |
CN101247292B (zh) | 基于通用测试仪表应用编程接口的测试设备及测试方法 | |
CN101261600B (zh) | 一种软件测试装置及测试软件的设计方法 | |
CN108132876B (zh) | 一种基于注入方式的嵌入式软件目标码单元测试方法 | |
CN111782530B (zh) | 一种远程调试方法、装置、系统、电子设备及存储介质 | |
CN102968371A (zh) | 测试java api单元组件的方法及装置 | |
CN105591779A (zh) | 网元巡检方法及装置 | |
CN1627254A (zh) | 嵌入式系统的调试方法及其装置 | |
CN101266543A (zh) | 一种图形界面处理装置和方法 | |
CN106294119B (zh) | 测试调度系统、方法及终端设备 | |
KR20050034661A (ko) | 이동 통신 단말기 응용 프로그램 및 부가 서비스 기능 시험자동화 시스템 | |
CN106775916B (zh) | 减小应用安装包的方法、装置及电子设备 | |
CN110609703B (zh) | 性能检测工具实现方法、装置、可读存储介质及终端设备 | |
CN113127329B (zh) | 脚本调试方法、装置及计算机存储介质 | |
CN115437696B (zh) | 信创平台自适应配置方法及装置 | |
CN109918082B (zh) | 软件开发的编译系统及方法 | |
CN114385258B (zh) | 自动化测试方法、装置、电子设备及存储介质 | |
CN103324569B (zh) | 嵌入式系统应用程序代码的测试方法 | |
CN112596751A (zh) | 应用程序安装包的编译方法、终端、服务器及存储介质 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110420 Termination date: 20170114 |