测试装置及方法

文档序号:6546044阅读:187来源:国知局
专利名称:测试装置及方法
技术领域
本发明涉及测试技术领域,尤指一种测试装置及方法。
背景技术
请参照图1所示,对于硬件和软件进行测试的测试模型测试对象具有若干输入参数(InA、InB等)和若干输出信号(OutA、OutB等)。当然,测试对象的输入参数和输出信号的个数是不确定的。测试对象可以是硬件的一个芯片单元电路、一个功能单元电路或者一个完整单板电路等,也可以是一个软件模块。一般情况下,一个测对象都应该有输入参数作为输入激励,有输出信号作为激励响应。测试对象的每一个输入参数都可能有多种情况,比如输入模式指示参数就可以按照多种不同输入模式进行输入,以控制测试对象的工作模式。同样,测试对象的每一个输出信号也可能有不同的情况,比如输出高电平或者低电平,或者输出不同编码的数据流。所以,在对测试对象进行测试的时候,就需要考虑各个输入参数和输出信号的不同情况。输入参数包括但不限于测试对象的工作模式、地址等。
假设有一个如图1所示的有两个输入信号的测试对象,参数InA有两种情况为InA1和InA2,参数InB有三种情况为InB1、InB2和InB3。这样测试对象在应用情况A中的要求输入参数是InA1和InB2,如图2所示。在应用情况B中的要求参数是InA2和InB3,如图3所示。
请参照图4、5所示,在通常的测试中,是将InA和InB的参数固定。通常的测试方案中,测试软件是针对测试对象具体的应用情况进行编写。这样,当测试对象更换了应用情况从应用情况A变换到应用情况B之后,相应的就会要求各个输入参数随之变化,结果就是测试代码需要修改。
请参照图6所示,通常的测试装置包括测试功能模块1、测试功能模块2、测试功能模块3...测试功能模块N。各个测试功能模块则是根据具体测试环境(即应用状况)和测试对象的需要进行设计,所以其输出的参数集Out1、Out2、Out3...OutN等作为测试对象的输入激励是固定的,或者是在固定范围内变化的。如果需要满足新的测试环境和测试对象等的测试要求,则就需要修改代码。
测试人员在应用这种常用的测试装置进行测试的时候,就通过PC终端等直接或者间接的运行各个测试功能模块,向测试对象输出输入激励,控制测试对象,以实现相应的测试功能。
下面是一个实际的测试功能模块采用函数,实现设置芯片工作模式的功能SetChipWorkMode( ){(CSAddr+OffsetAddr)=WorkMode;}上面的函数就是通过向地址(CSAddr+OffsetAddr)写入参数WorkMode,来设置芯片的工作模式。其中,OffsetAddr是芯片工作模式寄存器的偏移地址,这是芯片内部的地址编号,是不会随应用情况的变化而变化的。CSAddr是芯片的片选地址,即基地址,这个地址在不同的应用情况中是不同的。WorkMode是需要设置的工作模式参数值,同样是会随不同的应用情况变化的。对于这些参数,在通常的测试软件中,都是在编码的时候针对具体的应用情况固定的。如果需要测试另外一种应用情况,就需要修改这些参数代码,重新编译,再使用。因此,现有技术中测试装置需要根据测试对象的不同应用情况修改相关代码,增加操作难度和人力成本;降低测试方案的通用性。

发明内容
本发明解决的问题是提供一种测试装置及方法,具有通用性,避免因应用状况不同而修改代码。
为解决上述问题,本发明测试装置用于产生测试对象的输入激励,包括参数设置接口模块,用于设置测试对象所有用到的变量参数;若干测试功能模块,通过从参数设置接口模块选用对应参数,根据输入的参数值产生测试对象的输入激励。
相应地,本发明测试方法包括在参数设置接口模块设置测试对象所有用到的变量参数;每个测试功能模块从参数设置接口模块选用对应的参数;测试功能模块根据选用的参数,产生测试对象的输入激励。
所述参数设置接口模块可以是函数、变量、结构体或其组合。
与现有技术相比,本发明具有以下优点本发明针对同一个测试对象设计通用的测试装置及方法,通过所有用到的参数在参数设置接口模块统一设置,这样在测试对象的应用情况有变化的时候,无须修改测试装置即可满足测试要求。这样可以大大提高测试软件的通用性,在测试一个测试对象的多种应用情况的时候,减少代码的维护工作量。
本发明测试装置和方法各个测试功能模块的输出参数都是可以在使用的时候实时控制的,即输入激励Out1、Out2等可以在不修改代码的情况下,根据测试对象应用情况的不同而变化。


图1至5是现有测试原理示意图。
图6是现有测试装置示意图。
图7是本发明测试装置示意图。
图8是本发明测试装置使用示意图。
图9是图7实施例示意图。
具体实施例方式
为了解决现有测试装置和方法存在的问题,实现在不修改代码的情况下满足同一个测试对象在不同应用情况下的测试要求。因此,本发明采取如下的设计方案将测试对象中需要变化的参数设计为由测试人员在使用的时候再设置输入,测试功能模块通过引用这些输入参数实现对测试对象在不同应用情况下的测试。
请参照图7所示,本发明测试装置用于产生测试对象的输入激励,包括参数设置接口模块,用于设置测试对象所有用到的变量参数;若干测试功能模块1、测试功能模块2、测试功能模块3...测试功能模块N,通过从参数设置接口模块选用对应参数,根据输入的参数值产生测试对象的输入激励Out1、Out2、Out3...OutN。
请参照图8所示,测试对象在不同应用情况中需要变化的参数由测试人员通过参数设置接口模块进行设置。参数设置接口模块可以是函数、变量、结构体等,或者是函数、变量和结构体等的组合。参数设置接口模块通过变量、结构体等形式向各个测试功能模块传递测试人员设置的参数。这样既可达到不修改代码就可以将一个测试软件应用于同一个被测试对象的不同应用情况的目的。另外,并不是所有的测试功能模块都会使用所有的通过参数设置接口模块设置的参数,只是根据需要选择使用。
在实际中,测试功能模块和测试对象之间的关系实际上就是读写操作关系,测试功能模块根据输入激励参数Out1、Out2、Out3...OutN的不同对测试对象读或者写不同的地址空间。现有技术不再赘述。
测试人员在应用本测试装置进行测试之前,需要先通过参数设置接口模块设置好测试对象的各个参数,然后,再调用测试功能模块进行测试。测试人员的操作可以是通过PC终端等利用命令行或者图形界面等形式进行。这样本发明测试方法,包括在参数设置接口模块设置测试对象所有用到的变量参数;每个测试功能模块从参数设置接口模块选用对应的参数;测试功能模块根据选用的参数,产生测试对象的输入激励。
请参照图9所示,下面是本发明具体实施例。
假设测试对象是一个芯片单元电路,有两个输入参数为片选地址和工作模式,其中片选地址参数(CSAddr)为一个任意的32bit数据,工作模式参数(WorkMode)则有三种应用情况为0/1/2。根据片选地址参数和工作模式参数的值,测试功能模块Function A( )和Function B( ),输出该芯片单元电路的输入激励Out1和Out2,使芯片单元电路工作并输出有两个信号线OutA和OutB。,再通过示波器检测信号线OutA和OutB,以测试这个芯片单元电路的功能是否正常。参数设置接口模块主要有两个变量CSAddr和WorkMode,分别用于接受测试人员设置片选地址个工作模式两个参数。在测试功能模块为函数FunctionA( )和FunctionB( ),都需要使用到CSAddr和WorkMode两个输入参数。
其测试方法测试人员先设置好参数CSAddr和WorkMode,再运行函数FunctionA( )和FunctionB( )进行测试。测试人员操作测试软件的方法可以通过PC等终端应用命令行或者图形界面等形式。
这样,当被测试芯片单元电路的CSAddr和WorkMode两个参数需要更改的时候,只需要测试人员在运行测试功能模块之前,通过参数设置接口模块设置一下这两个参数即可,无须修改代码。
下面是测试功能模块的具体实施例,实现设置芯片工作模式的功能
SetChipWorkMode( ){(CSAddr+OffsetAddr)=WorkMode;}上面的函数就是通过向地址(CSAddr+OffsetAddr)写入参数WorkMode,来设置芯片的工作模式。其中,OffsetAddr是芯片工作模式寄存器的偏移地址,这是芯片内部的地址编号,是不会随应用情况的变化而变化的。CSAddr是芯片的片选地址,即基地址,这个地址在不同的应用情况中是不同的。WorkMode是需要设置的工作模式参数值,同样是会随不同的应用情况变化的。对于两个可能会变化的参数CSAddr和WorkMode,参数设置接口模块可以分别定义为全局变量或者是一起定义为一个全局结构体。或者参数设置接口模块设置这些参数的方法可以使用函数来设置,或者也可以通过PC终端的调试软件直接设定这些参数,如在嵌入式操作系统VxWorks的调试软件Tomado的命令终端Shell中直接使用命令,如“CSAddr=地址参数”,来设定这些参数。
使用函数的方法设计参数设置接口模块的例子如下所示SetCsAddr(地址参数){CSAddr=地址参数;}SetWorkMode(模式参数){WorkMode=模式参数;}在测试的时候,就需要先设定这些参数CSAddr和WorkMode,再使用测试功能模块中函数SetChipWorkMode进行测试。
本发明针对同一个测试对象设计通用的测试装置及方法,在测试对象的应用情况有变化的时候,无须修改测试装置即可满足测试要求。这样可以大大提高测试软件的通用性,在测试一个测试对象的多种应用情况的时候,减少代码的维护工作量。
本发明测试装置和方法各个测试功能模块的输出参数都是可以在使用的时候实时控制的,即输入激励Out1、Out2等可以在不修改代码的情况下,根据测试对象应用情况的不同而变化。
权利要求
1.一种测试装置,用于产生测试对象的输入激励,其特征在于,包括参数设置接口模块,用于设置测试对象所有用到的变量参数;若干测试功能模块,通过从参数设置接口模块选用对应参数,根据输入的参数值产生测试对象的输入激励。
2.如权利要求1所述的测试装置,其特征在于,所述参数设置接口模块可以是函数、变量、结构体或其组合。
3.一种使用权利要求1所述测试装置的测试方法,其特征在于,包括在参数设置接口模块设置测试对象所有用到的变量参数;每个测试功能模块从参数设置接口模块选用对应的参数;测试功能模块根据选用的参数,产生测试对象的输入激励。
4.如权利要求3所述的测试装置的测试方法,其特征在于,所述参数设置接口模块可以是函数、变量、结构体或其组合。
全文摘要
一种测试装置及方法,用于产生测试对象的输入激励,其中测试装置包括参数设置接口模块,用于设置测试对象所有用到的变量参数;若干测试功能模块,通过从参数设置接口模块选用对应参数,根据输入的参数值产生测试对象的输入激励。相应地,测试方法包括在参数设置接口模块设置测试对象所有用到的变量参数;每个测试功能模块从参数设置接口模块选用对应的参数;测试功能模块根据选用的参数,产生测试对象的输入激励。这样可以大大提高测试软件的通用性,在测试一个测试对象的多种应用情况的时候,减少代码的维护工作量。
文档编号G06F11/36GK1848092SQ20051006436
公开日2006年10月18日 申请日期2005年4月14日 优先权日2005年4月14日
发明者夏章抓, 黄智荣, 翟亮, 王 锋 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1