专利名称::电子产品的功能测试方法和设备的制作方法
技术领域:
:本发明涉及电子线路板或装置测试领域,更具体地涉及电子产品的功能测试方法和设备。
背景技术:
:关于从设计到自动功能测试系统的信息传递,在已知技术中存在显著差距。当前,传递是借助于人类语言的书面文档,即,所谓的功能规范进行的。还有一种广泛的意见是,有关这样的信息的安排的设计责任未被清楚地指定。具体地说,为了测试产品的性能,功能规范描述需要做什么、借助于什么手段、以及按何种顺序。这种差距,S卩,使用人类语言来处理用于产品的工业化的基本信息,在人力资源和时间方面会导致相当高的成本。因此,必须解释以人类语言表达的文档以制造功能测试设备。此外,每个设备专用于特定产品。换句话说,在当前事态下,不可能制造通用的功能测试系统。电子线路板的功能测试是验证电子产品按照规范工作的已知和所需要求。然而,在电子产品的生命中的三个不同时刻,即,在样机制造、生产和修理期间有这种需要,功能测试通常被认为是生产需要,即,在交付产品之前,在生产结束时必须进行的试验。电子线路板和系统的工业化过程还建立了其它类型的测试,所述测试侧重其它方面,但可以被分组到被称为组件类别或电路类别的类别中在线测试、边界扫描、光学检查、X-射线检查。所有这些过程本质上都不同于功能测试,因为它们不考虑组件如何交互、它们到底如何“工作”,而是只考虑单个零件是否存在,和关于设计信息和在焊接和组装方面的工业处理质量是否处在容限之内。因此,与单个组件功能有关的分析结果忽略了它们为什么组合在一起以形成产品的原因。在中小型公司中,设计师他/她本身可以提供对功能测试系统设计的支持,并且系统难以能够覆盖对该公司全部产品的测试。自动或半自动功能测试器的典型布局预期是与测试系统相连接的PC,允许借助适配接口来测试产品。公司自己的线路板或由第三方提供的线路板可以用于制造测试系统。对于用于控制系统的软件也一样。与使用的硬件无关,没有人提供其中信息部分与执行部分分开的功能规范的开发环境。换句话说,软件环境用于电子设计,而所谓的功能测试文档在设计步骤之前、期间和之后写成,以至于只有在测试步骤期间有可能突出文档中示出的与实际设计的之间的任何可能差异。现有技术提供的产品旨在制造用于以简单方式(例如,图形地)开发没有编程概念的用户可用的测试系统软件的工具,但没有在书写功能规范方面提供任何支持,所述功能规范必须是与项目联合开发的文档。关于功能方面,在电子产品的当前工业化过程中可以标识下述步骤-定义功能规范;_用非正式人类语言书写文本;-由一个人或多个人解释所述文本;-也从使用必须适用于各种需要的通用商用产品开始,建立专用系统。上述提纲显示了两个相当大的差距其一是缺乏标准化功能规范模型,因此需要必须设计和制造测试系统的一或两个人。这确定了如下方面的成本人力资源实现测试系统所需的时间由人类语言文本的解释产生的错误在测试系统验证期间,通常有必要从生产回到设计这意味着功能规范中所写的内容与产品不符。其二是缺乏通用功能测试系统的体系结构要求的定义,使得产生了繁多的硬件系统,其中所有系统都相互类似,但每一个系统都专用于单个产品,不仅这些系统的复制是昂贵的,它们的维护也是昂贵的。
发明内容本发明的一个目的是提供用于电子产品的功能测试方法。因此,本发明旨在借助于一种电子产品的功能测试方法来达到上述目的,按照权利要求1所述的功能测试方法适合在控制与待测电子产品的至少一个模拟/数字硬件接口的所述数据处理装置上实现,所述硬件接口包含相应软件驱动器;所述方法包含如下步骤-读取按照结构化文档的递归模型的功能测试规范文档;-按照之前实现的递归模型来驱动所述模拟/数字接口,比较电子产品的电/功能行为与所述结构化文档之间的对应;所述递归模型定义其中每个节点是对象或类的树,所述对象或类可以包含至少一个第二对象,该第二对象适合包含至少一个数据,并且适合与所述模拟/数字硬件接口的至少一个驱动器相关联。本发明的又一目的是提供一种按照所述方法工作的电子产品的通用型功能测试设备。因此,本发明旨在借助于一种用于电子产品的功能测试设备来达到上述目的,按照权利要求5所述的功能测试设备包含如下装置_与所述电子产品的模拟/数字硬件接口装置,适用于生成到电子产品的电输入信号,并适用于获取来自电子产品的电输出信号,以便进行功能测试试验;-处理装置,适用于读取按照递归模型结构化的电子产品功能测试规范文档,所述递归模型定义其中每个节点是对象或类的树,所述对象或类包含至少一个第二对象,所述第二对象适合包含至少一个数据,并且适合与所述至少一个模拟/数字硬件接口相关联;4以及-所述处理装置和所述硬件接口装置之间的软件接口装置,所述软件接口装置与至少一个所述第二对象相关联。树结构按照遵循定义功能规范的文档的格式的树生成次序,自然地定义从较高次序级到较低次序级的节点和在同级节点之间执行的一个或多个操作序列或步骤。因此,当按照本发明的模型来结构化文档时,通过读取定义设备的功能特征的文档来自动定义由硬件接口借助于处理进程驱动的操作序列。有利的是,可通过读取相应的、适当格式化的描述性功能规范文档,只使用包含既生成又获取模拟和/或数字信号的硬件接口板的一个设备来进行多个电子设备的功能测试o适合将所述模型转换成例程的面向对象类型的编程语言的选择绝对与本发明的范围无关。按照本发明的另一个方面,当辅助电子设计的共用软件环境集成了辅助定义功能规范,然后能够按照本发明的模型将所述规范格式化并可由所述功能测试设备直接解释的工具时,所述方法得到其最佳应用。这样,避免了以人类语言书写所述文档,然后解释所述文档以生产特定测试系统的劳动。从属权利要求描述了本发明的优选实施例。借助附图,根据对通过非限制性例子示例的用于电子产品的功能测试方法和设备的优选但非排它实施例的详细描述,本发明的其它特征和优点将更加明显,在附图中图1示意性地示出了适合由测试设备自动解释的、与电子电路或产品的建立并行地定义功能规范的电子文档书写;图2示出了按照UML表示法其中每个节点由类或对象表示的树的递归模型;图3示出了包含图2中的递归模型的详细模型;图4a_4c示出了FunctionalSpecDoc、Step和Module类的定义例子。具体实施例方式参考图1和2,提出了适合在数据处理装置上实现的电子产品功能测试方法,该数据处理装置控制与待测产品的至少一个模拟/数字型接口,所述模拟/数字型接口包含相应软件驱动器;该方法包含如下步骤-读取按照递归模型结构化的文档;-按照之前实现的递归模型来驱动所述模拟/数字接口,从而验证电子产品的行为与所述结构化文档之间的对应。FunctionalSpecDoc块代表定义结构化电气/电子产品的功能规范的文档。它包含从其遗传地导出StepFolder对象的至少一个St印对象或类,所述St印对象或类中包含至少一个其它St印对象。每个St印对象包含至少一个Module对象,所述Module对象可以包含至少一个Field对象,根据所述Field对象是固定的还是相关的,可从中遗传地导出FixedField数5据或Formula数据。Step对象上的StepFolder对象的循环指示标识可数无穷树的递归,其中,节点之间的相关性具有功能和时间特征。例如,在树中,包括启动组件的步骤在时间上先于该组件的工作参数的修改。对于本领域的普通技术人员来说,显而易见,这样的结构可以包含正好在FunctionalSpecDoc块下面的无穷个零级可数节点,其中每个节点包含具有1、2级等的无穷个可数节点,定义了与定义一个或多个功能测试的文档的复杂性相关的或多或少分支的树结构。有利的是,该模型从而代表可利用与递归有关的任何面向对象的编程语言实现的递归结构。此外,分支树结构按照遵循定义功能规范的文档的格式的树生成次序,自然地定义从较高次序级到较低次序级的节点,或在同级节点之间执行的一个或多个操作序列或步马聚o因此,通过规定对象FunctionalSpecDoc包含由St印对象定义的至少一个步骤来读取图2中的模型。StepFolder对象是St印对象的专门化(遗传),因此,它们也是适合包含一个或多个Step对象(递归)的Step。每个步骤包含由Module对象定义的0到无穷大可数模块,每个模块包含由Field对象定义的0到无穷大可数字段。在如下描述中,值得强调的是,通过定义树分层结构节点,St印Folder对象可以无差别地被称为StepFolder对象或节点,而与它在树中的分层结构级别无关。因此,通过将一个级别的节点(父节点)与较低级别的节点或子节点绑定在一起的分层结构,在至少一个相应节点Module的FixedField字段中指定的功能测试条件(例如,将供电电压设置为5V)被指定并冻结用于从给定父节点向下的层级的子节点、孙节点寸。有利的是,只需设置一次物理量级或工作参数的给定值,并且当需要时,从某个步骤起进行修改。此外,设置在字段中的值如出现在,例如,电子表格中,并且具体地讲,是依赖于其它数据的Formula型数据,则可以被看作值或参考。当需要时,子节点可以通过取与较高层级节点相关的对象中包含的数据的数值,或通过本地修改(例如,通过乘、除等),来确定工作参数从某个步骤起的变化。因此,从该步骤起,跟随树的分支,修改所述工作参数。显而易见,这种建模不明确地涉及测试规范的执行部分,因此不明确地涉及测试设备的功能。按照本发明,实现所述方法的功能测试设备包含-用于将模拟/数字硬件与所述电子产品接口的装置,适用于生成对于电子产品的电输入信号,并且适用于获取来自电子产品的电输出信号,以便进行功能测试试验;-处理装置,适用于读取定义所述电子产品的功能规范并按照定义树的递归模型结构化的文档,在所述树中,每个节点是Step对象或类,所述Step对象或类包含至少一个第二Module对象,所述第二Module对象适合包含至少一个数据并适合与所述模拟/数字硬件接口的至少一个驱动器相关联;以及-所述处理装置与所述硬件接口装置之间的软件或驱动器接口装置,所述软件或驱动器接口装置与至少一个所述第二Module对象相关联。所述测试设备按照如图3所示、也可借助于UML表示法示意的方法来解释定义功能规范的所述文档。如图3所示,Module对象可以与用于驱动控制板,而不是信号发生器等的Driver对象相关联。关于功能文档,Module对象可以不包含任何Field型对象,即,Module对象没有被规定价值,和/或不包含或涉及任何数据。因此,通过使用例如XML来表示按照图2中的模型格式化并定义功能规范的文档,可以自动生成由节点形成的树,每个节点包含至少一个Module对象。至少一个Module对象与允许驱动与待测电子产品接口的线路板的Driver对象相关联。定义功能规范的上述模型在图的中心部分中与如下对象结合:FunctionalSpecDoc>Step、StepFolder>Module、Field、FixedField禾口Formula。一些上述对象的定义的例子显示在图4中。因此,Field对象被实现为用于字符串的FldString型、用于浮点数字字段的FldNumDouble、和用于具有预定值的选择字段的FldCombo的FixedField对象。如上所述,Formula对象可以依赖于相同模块或另一个模块的字段的值,可能借助于对它所依赖的所述值的计算。例如,当目标是将给定组件的供电电压设置成比标称值高10%的值时,该功能非常有用。因此,即使层级较高,也可以通过公式取包含在节点的FixedField中的当前值,并将它除以0.9,从而获得所述10%减少。但是,也可以由另一个模块取得在该给定步骤中测量的值。因此,Module对象可以被专门化为硬件控制模块,例如,ModHW对象,或不控制硬件的模块,诸如ModNoHW对象,所述模块分别由用于发生器的ModGenerators对象和它们的衍生物ModGenAC、ModGenDC和ModGenRST、用于负载的ModLoad和用于中继的ModRelays、用于操作者界面硬件的Modlnput、用于诸如循环、中断、并行化/顺序化的执行流控制的ModFlowCtrl;用于步骤验证的ModMeasure、和用于测量数据收集的ModLog来实现。值得注意的是,信息部分(即,功能规范)与驱动与待测电子产品的所述模拟/数字接口的执行部分是分开的。所述硬件由Attuator对象表示,Attuator对象也更通常表示在测试期间涉及的其它设备。因此,这些模块借助于Attuator对象,依靠通过Driver对象定义的驱动器变得可执行,Driver对象借助于通过Protocol对象定义的协议将包含在Module中的信息传递给Attuator。同样,Driver对象被专门化为具有借助于数据流管理的致动器的用于所有模块的DrvStreamLike对象、用于步骤验证模块的DrvMeasures、允许修改可以是循环、或停止、或中断、或并行化/顺序化的步骤执行流的DrvSysCtrl;用于按照IEEE488标准与标准化GPIB接口连接的仪器的基本管理模块的DrvGpibBase;用于管理到打印机的输出的DrvPrinter;以及用于管理为通用功能测试系统实现的所有模块的DrvFTSystemBase。7同样,Protocol对象被实现为用于TCP/IP协议的ProtTCP对象;用于RS232协议的ProtRS232;用于GPIB协议的ProtGpib;引用本地或远程文件系统的ProtFile;以及用于访问SQL数据库的ProtSQL。同样,Attuator对象被实现为用于管理屏幕显示以便与操作者交互的Popup对象;Printer定义本地或远程打印机;LogFile是可以由SQLLogFile定义,从而在SQL数据库中,或由ASCII文件中的ASCIILogFiIe定义的测试数据的集合;HWControlIer定义实现用于通用功能测试系统的硬件模块的智能管理器,这些硬件模块可以是共用CPU板、中继板、发生器、负载或前述硬件模块的任何组合。又一共用线路板可以是带有2个数字/模拟DAC通道和2个模拟/数字ADC通道的具有浮动规模管理的数字I/O。这种可以被实现用于功能测试的线路板是控制任何发生器/负载硬件模块、分析数字和模拟信号并测量它们的基础。所有这些对象都包括在FTDesignerApp对象中,FTDesignerApp对象提供用于借助于UserManager和User类来管理用户,并且包含诸如ModuleFactory类、由MainWindow对象定义的主窗口、由WorkToolBar对象定义的工作工具栏、和由FTDesignerView对象定义的一个或多个功能测试规范视图的模块的集合。除了最后的对象之外,其它对象通常为用于窗口应用(Windows、KDE/Linux)的任何框架库。下面将参照用于实现细节的具有事件驱动图形界面的应用的开发。另一方面,FTDesignerView对象定义功能规范在监视器上的显示。通过模块,通过步骤等,可以存在各种视图。KlistView对象定义用于包含步骤列表和由ModuleWidget对象定义的模块的视图的层级列表,其可以像在电子表格中那样,包含在由KtabWidget对象定义的文件夹中。也与电子表格类似,ModuleWidget可以从实现由Ktable对象定义的表格的对象中导出。此外,Moduleffidget由通过FieldWidget对象定义的各种字段的视图组成。相反,旨在由操作者-修理者使用的视图被组织成一个容件,其中存在所有硬件驱动模块,例如,ModHW,并且只带有主要字段,以便能够在出现故障的第一步骤停止测试,这使得修理更加方便,因为可以改变模块参数,即,Module对象,从而改变定义被测线路板的某个组件的输入。至于视图,优选地实现具有事件驱动图形界面的可以使用任何框架库实现的所谓的文档-视图概念,因此可以为最终用户组织功能规范文档的更合适视图,并且也作为更高级的数据抽象(作为用于应用的特定测试库的预定步骤)。这是不修改基本布局的应用的进一步开发。所述设备的优选实施例包含又一集成软件工作环境,所述集成软件工作环境辅助电子设计并适用于同时且自动地书写定义所述功能规范的所述文档。因此,所述文档可以借助于(i)与电子设计环境分开的适当不同工具来书写。在另一个优选实施例中,所述工具集成(ii)在所述电子设计环境中,从而在电子设计期间由设计环境本身自动书写所述文档。在又一个优选实施例中,将集成了所述功能规范书写工具的所述电子设计环境集成(iii)在功能测试设备中。在另一个优选实施例中,同时集成了适用于自动书写定义功能规范的所述文档的8所述电子设计环境的所述功能测试设备进一步包含(iv)用于自动生产借助于所述电子设计环境设计的电子线路板或产品的装置。在最后的实施例中,显而易见,可以使用单个设备来设计电子线路板、书写它的功能规范、制造设计的线路板并对其进行测试。具体地说,参考图1,依靠本发明,电子设计师被调适成同时定义电路以及产品的功能和性能特征两者。图中示出了功能规范的XML结构化文档的一个例子,它可用于测试具有5V和12V两个输出端的发电机,并代表非正式人类语言的功能测试规范的如下示范性文档“通过供应IlOVac来接通设备。检查无负载时,在+5V输出端电压是5Vdc士5%。检查无负载时,在+12V输出端电压是12Vdc士5%。将IA有源负载与+5V输出端相连接,并检查电压是5V±5%。将IA有源负载与+12V输出端相连接,并检查电压是12V士5%。通过在输入端供应220Vac来进行相同测试”;按照显示在图2中的递归模型将该文档结构化。<FunctionalSpecDoc><Name>Powersupplierwith2output+5Ve+12V(example)</Name><Step><Name>InitialConditions</Name>〈Module〉<Name>ACGEN</Name>〈Field〉<Name>Status</NName><Value>0n</Value>〈/Field〉〈Field〉<Name>Main</Name><Value>0</Value>〈/Field〉〈/Module〉〈Module〉<Name>LOADl</Name>〈Field〉<Name>Status</Name><Value>Connected</Value>〈/Field〉〈Field〉<Name>Main</Name><Value>0</Value>〈/Field〉〈/Module〉〈Module〉9<Name>L0AD2</Name>〈Field〉<Name>Status</Name><Value>Connected</Value>〈/Field〉〈Field〉<Name>Main</Name><Value>0</Value>〈/Field〉〈/Module〉〈Module〉<Name>MEASURE</Name>〈Field〉<Name>Formula</Name><Value/>〈/Field〉<Field><Name>ThMin</Name><Value/>〈/Field〉〈Field〉<Name>ThMax</Name><Value/></Field>〈/Module〉<Step><Name>Provea110Vac</Name>〈Module〉<Name>ACGEN</Name>〈Field〉<Name>Main</Name><Value>110</Value>〈/Field〉〈/Module〉<Step><Name>+5ViOA</Name>〈Module〉<Name>MEASURE</Name>〈Field〉<Name>Formula</Name><Value>=LOADlVdc()</Value>〈/Field〉〈Field〉<Name>ThMin</Name><Value>4,75</Value>〈/Field〉〈Field〉<Name>ThMax</Name><Value>5,25</Value>〈/Field〉〈/Module〉</Step><Step><Name>+12ViOA</Name>〈Module〉<Name>MEASURE</Name>〈Field〉<Name>Formula</Name><Value>=L0AD2::Vdc()</Value>〈/Field〉〈Field〉<Name>ThMin</Name><Value>ll,4</Value>〈/Field〉〈Field〉<Name>ThMax</Name><Value>12,6</Value></Field>〈/Module〉</Step><Step><Name>+5VilA</Name>〈Module〉<Name>LOADl</Name><Field><Name>Main</Name><Value>l</Value>〈/Field〉11〈/Module〉〈Module〉<Name>MEASURE</Name>〈Field〉<Name>Formula</Name><Value>=LOADl::Vdc()</Value>〈/Field〉〈Field〉<Name>ThMin</Name><Value>4,75</Value>〈/Field〉〈Field〉<Name>ThMax</Name><Value>5,25</Value>〈/Field〉〈/Module〉</Step><Step><Name>+12VilA</Name>〈Module〉<Name>L0AD2</Name><Field><Name>Main</Name><Value>l</Value></Field>〈/Module〉〈Module〉<Name>MEASURE</Name><Field><Name>Formula</Name><Value>=L0AD2::Vdc()</Value></Field><Field><Name>ThMin</Name><Value>ll,4</Value></Field><Field><Name>ThMax</Name><Value>12,6</Value>12〈/Field〉〈/Module〉</Step></Step><Step><Name>Provea220Vac</Name><Module><Name>ACGEN</Name>〈Field〉<Name>Main</Name><Value>220</Value></Field>〈/Module〉<Step><Name>+5V@0A</Name><Module><Name>MEASURE</Name>〈Field〉<Name>Formula</Name><Value>=LOADl::Vdc()</Value>〈/Field〉〈Field〉<Name>ThMin</Name><Value>4,75</Value></Field>〈Field〉<Name>ThMax</Name><Value>5,25</Value></Field>〈/Module〉</Step><Step><Name>+12V@0A</Name><Module><Name>MEASURE</Name>〈Field〉<Name>Formula</Name><Value>二L0AD2::Vdc()</Value>〈/Field〉01234578CN〈Field〉<Name>ThMin</Name><Value>ll,4</Value>〈/Field〉〈Field〉<Name>ThMax</Name><Value>12,6</Value>〈/Field〉〈/Module〉</Step><Step><Name>+5VilA</Name>〈Module〉<Name>LOADl</Name>〈Field〉<Name>Main</Name><Value>l</Value>〈/Field〉〈/Module〉〈Module〉<Name>MEASURE</Name>〈Field〉<Name>Formula</Name><Value>=LOADl::Vdc()</Value>〈/Field〉〈Field〉<Name>ThMin</Name><Value>4,75</Value>〈/Field〉〈Field〉<Name>ThMax</Name><Value>5,25</Value>〈/Field〉〈/Module〉</Step><Step><Name>+12VilA</Name>〈Module〉<Name>L0AD2</Name>14〈Field〉<Name>Main</Name><Value>l</Value>〈/Field〉〈/Module〉〈Module〉<Name>MEASURE</Name>〈Field〉<Name>Formula</Name><Value>=L0AD2::Vdc()</Value>〈/Field〉〈Field〉<Name>ThMin</Name><Value>ll,4</Value>〈/Field〉〈Field〉<Name>ThMax</Name><Value>12,6</Value>〈/Field〉〈/Module〉</Step></Step></Step></FunctionalSpecDoc>从功能规范文档开始的树的例子包含其中模块被设置成初始条件值的第一节点。到相互级别相同的相同数量节点的两个连接从那里分开;供电电压在一个连接中被设置成110V,而在另一个连接中被设置成220V。在功能测试期间,实现本发明方法的测试设备首先进入其中供电电压被设置成IlOV的节点,此后向下又一级别,并进入其中对供电单元的5V输出端设置无穷大电阻负载的节点,并测量无负载电压,然后转到其中负载值被设置成使得输出电流为IA的节点,并测量输出电压,然后转到其中对12V输出端设置无穷大电阻负载的节点,并测量无负载电压,然后将负载阻值设置成使得输出电流等于1A,并测量输出电压。此时,在关于IlOV的供电电压的测试结束时,应经过其中这样的电压被设置成220V的节点,并按相同次序执行前述步骤。因此,所谓的XML分析器可以用于读取XML结构化文档和实现图2中的模型。本领域的普通技术人员,具体地讲,熟悉面向对象的编程和诸如UML的形式的人不难理解本发明中使用的建模技术,因此,用于实现上述方法的设备的构建是本领域的普通技术人员力所能及的。依靠本发明,示例了解决电子线路板功能测试问题的方法,该方法对于电子公司15在如下方面有无可置疑的好处-借助于结构化文档来定义功能规范,以便由处理装置直接和自动地解释;-建模通用功能测试系统。第一方面确定了如下好处-与功能规范有关的信息与实现信息之间是分开的,从而可以制造通用功能测试系统;-建立由电子设计师他或她本身用于书写功能规范的CAD工具,借助该工具,可以将他或她的技能信息直接传递给功能测试系统,而无需编码和解释,从而使产品工业化过程在功能方面也自动化,并且由于在生产期间参与功能测试的人的数量和资格,导致成本降低;-通过使用存在于测试系统中的也是异构的硬件资源(否则不在单个测试中使用的硬件资源)来自动并行地测试若干等效设备,从而缩短了测试时间,这导致在不增加测试系统的成本的情况下,相对于单次测试,测试成本降低。值得注意的是,这个方面在功能测试中非常重要,因为测试时间非常依赖于设备本身,并且在统计上与工件的处理时间相比是很长的。因此,对于其中不进行自动并行测试的相同效率的测试系统来说,测试时间是不可压缩的;-单一管理公司自己产品的功能规范,从而它们可被同一公司内部和外部的人和机器理解;_管理人类语言文档,该文档可以从模型化功能规范中自动生成;-可以外包功能测试,提供包含功能规范的仅一个文件;-外包者可以在不知道产品的实现特征的情况下提供功能测试服务,但仅能够没有解释疑问地解释功能规范。第二方面确定了如下好处-创建由少数组件形成,仍适用于测试公司的所有类型产品的测试系统;-降低功能测试系统及其维护的成本。具体地说,可以利用最少数量的线路板来形成适合满足公司几乎所有需要的测试设备。对于需要特定功能的其余少数公司,将所述最少数量的共用线路板用作用于集成执行这些特定功能的致动系统的组件。本文所述的特定实施例不限制涵盖了权利要求书中限定的本发明的所有变体的本申请的内容。权利要求一种适合在数据处理装置上实现的电子产品的功能测试方法,所述数据处理装置控制与待测电子产品的至少一个模拟/数字硬件接口,所述硬件接口包含相应软件驱动器;所述方法包含如下步骤读取按照结构化文档的递归模型的功能测试规范文档;按照之前实现的递归模型来驱动所述模拟/数字接口,比较电子产品的电/功能行为与所述结构化文档之间的对应;所述递归模型定义其中每个节点是对象或类(Step)的树,对象或类(Step)可以包含至少一个第二对象(Module),所述第二对象(Module)适合包含至少一个数据,并适合与所述模拟/数字硬件接口的至少一个驱动器相关联。2.按照权利要求1所述的方法,其中,所述第二对象(Module)适合与又一个软件接口相关联。3.按照权利要求1所述的方法,其中,所述数据可以包含固定值,或依赖于包含在相同节点或层级较高节点的任何所述第二对象(Module)的一个数据中的值的值。4.按照前面任何一项权利要求所述的方法,其中,所述对象不被规定价值和/或不包含或涉及任何数据。5.一种用于电子产品的功能测试设备,包含-与所述电子产品的模拟/数字硬件接口装置,适用于生成对于电子产品的电输入信号,并适用于获取来自电子产品的电输出信号,以便进行功能测试试验;-处理装置,适用于读取按照递归模型结构化并定义其中每个节点是对象或类(St印)的树的所述电子产品的功能测试规范文档,所述对象或类(Step)包含至少一个第二对象(Module),所述第二对象(Module)适合包含至少一个数据,并适合与所述至少一个模拟/数字硬件接口的至少一个驱动器相关联;_所述处理装置与所述硬件接口装置之间的软件或驱动器接口装置,所述软件或驱动器接口装置与至少一个所述第二对象(Module)相关联。6.按照权利要求5所述的功能测试设备,进一步集成了辅助装置,用于辅助按照结构化文档的所述递归模型来建立所述功能测试规范文档。7.按照权利要求5或6所述的功能测试设备,进一步包含电子设计辅助装置。8.一种包含代码装置的计算机程序,当在计算机上运行所述程序时,所述代码装置适用于实现按照权利要求1到4的递归模型所定义的树所定义的步骤。9.一种包含记录在上面的程序的计算机可读装置,所述装置包含当在计算机上运行所述程序时,适用于实现按照权利要求1到4的递归模型所定义的树所定义的步骤的程序代码。全文摘要描述了电子产品的功能测试方法,所述方法包括按照功能规范的递归模型,借助于结构化文档来书写定义产品的功能规范的文档,使得可被人或非人解释者理解,因此使电子产品的功能测试设备的建立自动化。适用于解释所述文档的所述功能测试设备是通用的,并且包含可关于经受功能测试的产品的类型替换的具有相应驱动器的接口装置。文档编号G06F17/50GK101896908SQ200880119990公开日2010年11月24日申请日期2008年11月12日优先权日2007年11月12日发明者M·马丁内诺申请人:创建测试电子自动化有限责任公司