CN105143895B - 从交互式图形用户界面中自动生成测试类预编译头 - Google Patents

从交互式图形用户界面中自动生成测试类预编译头 Download PDF

Info

Publication number
CN105143895B
CN105143895B CN201480022510.7A CN201480022510A CN105143895B CN 105143895 B CN105143895 B CN 105143895B CN 201480022510 A CN201480022510 A CN 201480022510A CN 105143895 B CN105143895 B CN 105143895B
Authority
CN
China
Prior art keywords
test
header file
class
test class
plan
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.)
Active
Application number
CN201480022510.7A
Other languages
English (en)
Other versions
CN105143895A (zh
Inventor
马克·埃尔斯顿
安肯·普拉玛尼克
利昂·陈
钱德拉·品伽拉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advantest Corp
Original Assignee
Advantest Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Advantest Corp filed Critical Advantest Corp
Publication of CN105143895A publication Critical patent/CN105143895A/zh
Application granted granted Critical
Publication of CN105143895B publication Critical patent/CN105143895B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Human Computer Interaction (AREA)

Abstract

提出了一种用自动测试设备(ATE)执行测试的方法。该方法包括利用图形用户界面获得有关测试类的信息。进一步,其包括自动生成第一头文件,其中,第一头文件包括有关测试类的信息。其次,其包括将第一头文件导入可操作以利用测试仪操作系统执行的测试计划,其中,测试计划包括测试类的实例。其进一步包括从第一头文件中自动生成第二头文件,其中,第二头文件是测试类的头文件。该方法还包括利用测试仪操作系统验证测试计划。最后,该方法包括将测试计划和编译模块加载到测试仪操作系统中,以供执行,其中,编译模块是测试类的编译译文。

Description

从交互式图形用户界面中自动生成测试类预编译头
技术领域
本发明的实施例总体涉及自动器件测试,更特别地,涉及为自动器件测试创建测试计划和测试类的用户友好且自动的方法。
背景技术
自动测试设备(ATE)可以是对器件、半导体晶片或管芯等执行测试的任何测试组件。ATE组件可用于执行自动测试,可快速执行测量,并生成可分析的测试结果。ATE组件可以是从与计量表耦合的计算机系统到复杂自动测试组件的任何组件,可包括定制专用计算机控制系统和能自动测试电子部件和/或半导体的多种不同测试仪器。自动测试设备(ATE)通常用于电气芯片制造领域。ATE系统减少了对器件进行测试所花费的时间以确保所述器件按照设计执行功能,并可作为诊断工具,用于确定指定器件在到达消费者手中之前其内部是否存在故障部件。
在测试器件或产品的过程中,例如,在生产之后,达到较高产品质量,获得器件或产品性能的评估结果,获得关于制造过程的反馈并最终获得较高客户满意度,这些十分重要。通常会执行多项测试,以确保器件或产品的功能正确,这种器件或产品在测试用语中一般称为被测器件(“DUT”)。该多项测试一般是由用户加载到ATE系统中的测试计划的一部分。测试计划起到在DUT上进行测试的蓝图的作用。可将多项测试编译到测试流程中,其中,测试流程可分为不同的测试组,测试组包含用于对器件或产品进行测试的一项或多项测试。例如,可利用包括接触测试、电流-电压测试、逻辑测试、速度测试、应力测试和功能测试的测试流程对半导体器件进行测试。
在典型的ATE系统中,用户可利用应用编程接口对指定测试计划开发测试类。加载测试计划时,ATE系统控制器对测试类进行验证分析,以确定测试流程中的所有节点是否都可根据用户期望进行适当配置。为了验证测试计划,ATE系统控制器需要测试类的预编译头文件。各个测试类的预编译头文件主要为ATE系统控制器描述测试类及其各个参数,以执行验证。预编译头文件还用于为测试类本身生成C++头文件,在用户开发的测试类与测试计划作者开发的测试计划之间提供公用定义桥。
在常规ATE系统中,创建预编译头文件很麻烦,因为用户一般必须手动为预编译头文件开发程序代码,这会耗费大量时间,因为用户必须学习预编译头文件所需的特殊格式或语法。另外,这个过程易于出错,因为代码语法不具有用户友好性,而是处于较低的机器级。
发明内容
由此,需要一种ATE系统,为用户提供图形用户界面(GUI),使用户能用简单的拖放程序定义其测试类的参数,以与GUI交互,从而便于进行预编译头文件的自动开发。
在一个实施例中,提出了一种用自动测试设备(ATE)执行测试的方法。所述方法包括利用图形用户界面获得有关至少一个测试类的信息。此外,其包括自动生成第一头文件,其中,所述第一头文件的内容包括有关至少一个测试类的信息。其次,所述方法包括将所述第一头文件导入可操作以利用测试仪操作系统执行的测试计划,其中,所述测试计划包括所述至少一个测试类的实例。其还包括从所述第一头文件中自动生成第二头文件,其中,所述第二头文件是所述至少一个测试类的头文件,并且其中,所述第二头文件和所述至少一个测试类是用公用编程语言编制的。所述方法还包括利用测试仪操作系统验证测试计划。最后,所述方法包括将所述测试计划和至少一个编译模块加载到所述测试仪操作系统中,以供执行,其中,所述至少一个编译模块中的每个编译模块是所述至少一个测试类中的各个测试类的编译译文,并且其中,所述第二头文件用于生成所述至少一个编译模块。
在另一个实施例中,公开了一种计算机可读存储介质,上面存储有计算机可执行指令,如果计算机系统执行所述计算机可执行指令,会使所述计算机系统执行用自动测试设备(ATE)执行测试的方法。所述方法包括利用图形用户界面获得有关至少一个测试类的信息。此外,其包括自动生成第一头文件,其中,所述第一头文件的内容包括有关至少一个测试类的信息。其次,所述方法包括将所述第一头文件导入可操作以利用测试仪操作系统执行的测试计划,其中,所述测试计划包括所述至少一个测试类的实例。其还包括从所述第一头文件自动生成第二头文件,其中,所述第二头文件是所述至少一个测试类的头文件,并且其中,所述第二头文件和所述至少一个测试类是用公用编程语言编制的。所述方法还包括利用所述测试仪操作系统验证所述测试计划。最后,所述方法包括将所述测试计划和所述至少一个编译模块加载到所述测试仪操作系统中,以供执行,其中,所述至少一个编译模块中的每个编译模块是所述至少一个测试类中的各个测试类的编译译文,并且其中,所述第二头文件用于生成所述至少一个编译模块。
在一个实施例中,提出了一种执行自动测试的系统。所述系统包括存储器,所述存储器包括存储在其中的测试仪操作系统。所述系统还包括可操作以与多个被测器件(DUT)连接的通信接口。此外,所述系统包括与所述存储器和所述通信接口耦合的处理器。所述处理器用于根据测试仪操作系统操作,以:(a)利用图形用户界面获得有关至少一个测试类的信息;(b)自动生成第一头文件,其中,所述第一头文件的内容包括所述信息;(c)将所述第一头文件导入测试计划,所述测试计划可操作以利用所述测试仪操作系统执行,其中,所述测试计划包括所述至少一个测试类的实例,并且其中,所述测试计划可操作以定义将在多个DUT上运行的测试;(d)从第一头文件自动生成第二头文件,其中,所述第二头文件是所述至少一个测试类的头文件,并且其中,所述第二头文件和所述至少一个测试类是用公用编程语言编制的;(e)利用所述测试仪操作系统验证所述测试计划;以及(f)所述将测试计划和所述至少一个编译模块加载到所述测试仪操作系统中,以供执行,其中,所述至少一个编译模块中的每个编译模块是所述至少一个测试类中的各个测试类的编译译文,并且其中,所述第二头文件用于生成至少所述至少一个编译模块。
在一个实施例中,公开了一种用自动测试设备(ATE)执行测试的方法。所述方法包括利用图形用户界面获得有关至少一个测试类的信息。所述方法还包括自动生成头文件,其中,所述第一头文件的内容包括所述信息。所述图形用户界面包括显示编辑器窗口和文本编辑器窗口,其中,在所述显示编辑器窗口中所做的更改自动映射到文本编辑器窗口中的对应更改,而且其中,在所述文本编辑器窗口中所做的更改自动映射到显示编辑器窗口中的对应更改。
以下详细说明及附图有助于更好理解本发明的特性和优点。
附图说明
附图以非限制性示例的方式对本发明的实施例进行了图示说明,在附图中,相似参考数字表示相似元件。
图1是根据本发明的一个实施例,可在其上实施本发明的自动测试系统的实施例的计算机系统。
图2A是根据本发明的一个实施例,可在其上实施本发明的实施例的自动测试设备装置的原理框图。
图2B是图2A的自动测试设备装置的一个实施例的更详细原理框图。
图3图示了可从单个测试类创建不同测试实例的方法的示意图。
图4图示了测试计划中的测试类实例化的一个示例。
图5图示了预编译头文件的基础结构。
图6图示了根据本发明一个实施例的在代码视图与设计视图之间切换的GUI。
图7图示了根据本发明一个实施例的预编译头编辑器的一个示例设计视图模式。
图8是根据本发明一个实施例的示例软件过程的原理框图,图示了利用自动测试系统的图形用户界面生成预编译头文件的过程及预编译头文件的功能。
图9显示了根据本发明一个实施例的利用图形用户界面生成预编译头文件,编译测试类以生成可执行DLL,并利用预编译头文件和编译的测试类执行测试计划的示例计算机控制过程的流程图。
具体实施方式
现在将对本发明的各个实施例进行详细说明,附图中对各个实施例的示例进行了图示。虽然将本发明与这些实施例相结合而进行描述,但应理解的是,本公开并不限于这些实施例。相反,本公开旨在涵盖所附权利要求所限定的本发明的精神和范围内可包括的替代方案、变形例和等效方案。另外,本公开的以下详细说明中叙述了多项具体细节,以便于彻底理解本公开。但是,应理解的是,可在无这些具体细节的情况下实践本公开。在其他实例中,没有对已知方法、程序、部件和电路进行详细说明,以避免不必要地混淆本发明的方面。
以下详细说明中的某些部分以对计算机存储器内的程序、逻辑块、处理和对数据位的操作的其他符号表示的形式而呈现。这些说明和表示是数据处理领域的技术人员用来最有效地将其成果的实质传达给本领域的其他技术人员的方式。在本申请中,可将程序、逻辑块、过程等构想为引起预期结果的自相一致的步骤或指令序列。步骤对物理量进行物理操纵。通常来说,这些量采用能在计算机系统中存储、传输、组合、比较和另外操纵的电或磁信号的形式,但不一定必须如此。主要由于常见用法的原因,有时将这些信号称为事务、位、值、元素、符号、字符、样本、像素等,经证明较为方便。
但是,应记住的是,所有这些术语和相似术语都与合适的物理量相关联,仅仅是应用于这些量的方便标签。除非以下讨论中明显另有具体说明,应理解的是,在本公开中,使用“生成”、“导入”、“验证”、“加载”、“实例化”、“执行”、“识别”、“分配”、“关联”、“访问”、“确定”等术语的讨论指计算机系统或相似电子计算设备或处理器(例如,图1的系统110)进行的动作和过程(例如,图9的流程图900)。计算机系统或相似电子计算设备对计算机系统存储器、寄存器或其他这种信息存储、传输或显示设备内呈现为物理(电子)量的数据进行操纵和转换。
可在计算机可执行指令的总体语境下对本文所述的实施例进行讨论,所述计算机可执行指令处于某些形式的计算机可读存储介质(例如,程序模块)上,由一个或多个计算机或其他设备执行。作为示例(但不具有限制性),计算机可读存储介质可包括非暂态计算机可读存储介质和通信介质;非暂态计算机可读介质包括除暂态传播信号之外的所有计算机可读介质。一般来说,程序模块包括执行特定任务或实施特定抽象数据类型的例行程序、程序、对象、部件、数据结构等。在各个实施例中,可根据需要对所述程序模块的功能性进行组合或分布。
计算机存储介质包括以任何方法或技术实现的易失性和非易失性、可移动和不可移动介质,用于存储计算机可读指令、数据结构、程序模块或其他数据等信息。计算机存储介质包括,但不限于,随机存取存储器(RAM)、只读存储器(ROM)、电可擦可编程ROM(EEPROM)、闪速存储器或其他存储技术,光盘ROM(CD-ROM)、数字多功能光盘(DVD)或其他光学存储设备,磁带盒、磁带、磁盘存储设备或其他磁性存储设备,或可用于存储所需信息、并可被访问以检索该信息的任何其他介质。
通信介质可体现为计算机可执行指令、数据结构和程序模块,包括任何信息传输介质。作为示例(但不具有限制性),通信介质包括有线介质,例如有线网络或有线直接连接,以及无线介质,例如声学、射频(RF)、红外和其他无线介质。计算机可读介质的范围还可包括任何上述介质的组合。
图1是能实施本发明的实施例的计算系统110的示例的框图。例如,在一个实施例中,计算系统110可实施测试仪系统的控制器,其中,用于生成预编译头文件的图形用户界面在控制器上运行。计算系统110广义上是能执行计算机可读指令的任何单处理器或多处理器计算设备或系统。计算系统110的示例包括,但不限于,工作站、笔记本电脑、客户端侧终端、服务器、分布式计算系统,或任何其他计算系统或设备。在其最基础的配置中,计算系统110可包括至少一个处理器114和系统存储器116。
处理器114一般是能处理数据或解译和执行指令的任何类型或形式的处理单元。在某些实施例中,处理器114可接收来自软件应用或模块的指令。这些指令可使处理器114执行本文所述和/或所示的一个或多个示例实施例的功能。
系统存储器116一般是能存储数据和/或其他计算机可读指令的任何类型或形式的易失性或非易失性存储设备或介质。系统存储器116的示例包括,但不限于,RAM、ROM、闪速存储器,或任何其他合适存储设备。在某些实施例中,计算系统110可包括易失性存储单元(例如,系统存储器116)和非易失性存储设备(例如,主存储设备132),但并不要求如此。
除处理器114和系统存储器116之外,计算系统110还可包括一个或多个部件或元件。例如,在图1的实施例中,计算系统110包括存储器控制器118、输入/输出(I/O)控制器120和通信接口122,均可通过通信基础设施112互连。通信基础设施112一般是能便于计算设备的一个或多个部件之间进行通信的任何类型或形式的基础设施。通信基础设施112的示例包括,但不限于,通信总线(例如,工业标准架构(ISA)、外设部件互连(PCI)、PCIExpress(PCIe)或相似总线)和网络。
存储器控制器118一般是能处理内存或数据或控制计算系统110的一个或多个部件之间的通信的任何类型或形式的设备。例如,存储器控制器118可控制处理器114、系统存储器116和I/O控制器120之间通过通信基础设施112进行的通信。
I/O控制器120一般是能协调和/或控制计算设备的输入和输出功能的任何类型或形式的模块。例如,I/O控制器120可控制或协助计算系统110的一个或多个元件,例如,处理器114、系统存储器116、通信接口122、显示适配器126、输入接口130和存储接口134之间的数据传输。
通信接口122广义上是能协助示例计算系统110与一个或多个附加设备之间的通信的任何类型或形式的通信设备或适配器。例如,通信接口122可协助计算系统110与专用或公用网络(包括附加计算系统)之间的通信。通信接口122的示例包括,但不限于,有线网络接口(例如,网络接口卡)、无线网络接口(例如,无线网络接口卡)、调制解调器和任何其他合适接口。在一个实施例中,通信接口122通过到网络(例如,互联网)的直接链路提供与远程服务器的直接连接。通信接口122还可通过任何其他合适连接间接提供这种连接。
通信接口122还可以是主机适配器,被配置为协助计算系统110与一个或多个附加网络或存储设备之间通过外部总线或通信信道进行通信。主机适配器的示例包括,但不限于,小型计算机系统接口(SCSI)主机适配器、通用串行总线(USB)主机适配器、IEEE(电气与电子工程师学会)1394主机适配器、串行高级技术附件(SATA)和外接SATA(eSATA)主机适配器、高级技术附件(ATA)和并行ATA(PATA)主机适配器、光纤通道接口适配器、以太网适配器等。通信接口122还可使计算系统110进行分布式或远程计算。例如,通信接口122可接收远程设备的指令,或将指令发送给远程设备,以供执行。
如图1所示,计算系统110还可包括通过显示适配器126耦接到通信基础设施112的至少一个显示设备124。显示设备124一般是能在视觉上显示显示适配器126转发的信息的任何类型或形式的设备。同样,显示适配器126一般是被配置为转发图形、文本和其他数据,以供显示在显示设备124上的任何类型或形式的设备。
如图1所示,计算系统110还可包括通过输入接口130耦接到通信基础设施112的至少一个输入设备128。输入设备128一般是能向计算系统110提供计算机生成或人为生成的输入的任何类型或形式的输入设备。输入设备128的示例包括,但不限于,键盘、定点设备、语音识别设备或任何其他输入设备。
如图1所示,计算系统110还可包括通过存储接口134耦接到通信基础设施112的主存储设备132和备用存储设备133。存储设备132和133一般是能存储数据和/或其他计算机可读指令的任何类型或形式的存储设备或介质。例如,存储设备132和133可以是磁盘驱动器(例如,所谓的硬盘驱动器)、软盘驱动器、磁带驱动器、光盘驱动器、闪存驱动器等。存储接口134一般是用于在存储设备132和133与计算系统110的其他部件之间传输数据的任何类型或形式的接口或设备。
在一个示例中,数据库140可存储在主存储设备132内。数据库140可以是单个数据库或计算设备的一部分,或者可以是多个数据库或计算设备。例如,数据库140可以是(可以存储在)计算系统110的一部分和/或图2(下文)中的示例网络架构200的一部分。可替代地,数据库140可以是(可以存储在)能由计算设备(例如,网络架构200的一部分和/或计算系统110)访问的一个或多个物理上分离的设备。
参照图1,存储设备132和133可被配置为在可移动存储单元中进行读取和/或写入,可移动存储单元被配置为存储计算机软件、数据或其他计算机可读信息。合适的可移动存储单元的示例包括,但不限于,软盘、磁带、光盘、闪速存储器设备等。存储设备132和133还可包括允许将计算机软件、数据或其他计算机可读指令加载在计算系统110中的其他相似结构或设备。例如,存储设备132和133可被配置为读取和写入软件、数据或其他计算机可读信息。存储设备132和133还可以是计算系统110的一部分,或者可以是通过其他接口系统访问的单独设备。
多种其他设备或子系统可与计算系统110连接。相反地,实践本文所述的实施例,不需要使用图1所示的所有部件和设备。上文所述的设备和子系统还可以用与图1所示的方式不同的方式互连。计算系统110还可采用任何数量的软件、固件和/或硬件配置。例如,可将本文公开的示例实施例编码成计算机可读介质上的计算机程序(也称为计算机软件、软件应用、计算机可读指令或计算机控制逻辑)。
包含计算机程序的计算机可读介质可加载到计算系统110中。可将存储在计算机可读介质上的所有或一部分计算机程序存储在系统存储器116和/或存储设备132和133的各个部分中。加载到计算系统110中的计算机程序由处理器114执行时,可使处理器114执行本文所述和/或所示的示例实施例的功能和/或成为执行该功能的装置。附加地或可替代地,可在固件和/或硬件中实施本文所述和/或所示的示例实施例。
例如,可将用于运行测试计划的计算机程序存储在计算机可读介质上,随后存储在系统存储器116和/或存储设备132和133的各个部分中。计算机程序由处理器114执行时,可使处理器114执行在并行测试环境中在多个测试核之间共享资源所需的功能和/或成为执行该功能的装置。
从交互式图形用户界面中自动生成测试类预编译头
常规的预编译头文件创建方法涉及手动编写代码,出于各种原因,这是存在问题的。首先,为了编制预编译头文件,用户需要掌握定义预编译头的适用语法的功能知识。其次,由于该过程是手动进行,易于出错。本发明的实施例通过提供图形用户界面(GUI),使用户能在GUI内用用户友好的拖放程序定义其测试的参数,便于进行预编译头文件的开发,从而解决了这些问题。
图2A是根据本发明的一个实施例,可在其上实施并行测试系统的实施例的自动测试设备(ATE)装置的原理框图。在一个实施例中,系统控制器201包括一个或多个互联的计算机。例如,诸如爱德万测试集团(Advantest Corporation)的T2000测试仪系列之类的测试系统可使用计算机网络。在其他实施例中,系统控制器通常仅包括单个计算机。所述系统控制器201是整个系统的控制单元,运行ATE的负责完成所有用户级测试任务的软件,包括运行用户的主要测试计划。这种测试仪软件的一个示例是T2000System Software(“TSS”)。一般来说,诸如TSS之类的测试仪软件包括编译器,用于对以测试仪系统的编程语言(例如,OPENSTAR测试编程语言(“OTPL”))编写的测试计划进行编译。
通信总线215在系统控制器与测试仪硬件之间提供高速电子通信通道。通信总线还可称为底板、模块连接使能器或系统总线。在物理上,通信总线215是快速高带宽双工连接总线,可以是电气、光学等形式。在一个实施例中,通信总线215可采用TCP/IP协议。系统控制器201通过用经由通信总线215发送的命令对测试仪硬件进行编程,从而设定测试DUT211-214的条件。
测试仪硬件202包括为被测器件(DUT)211-214提供测试刺激、测量DUT对刺激的响应、并将其与预期响应相比较所需的一组复杂的电子和电气零件和连接器。在一个实施例中,测试仪硬件202可包括多个现场控制器,其中,每个现场控制器与多个DUT连接。每个现场控制器是器件测试中使用的计算机。可在现场控制器上执行测试计划程序。所述现场控制器与系统控制器连接,在通过通信总线215控制现场控制器的系统控制器上对用户执行的测试操作进行处理。
图2B是图2A的自动测试设备装置的一个实施例的更详细原理框图。在图2B所示的实施例中,测试仪硬件202可包括多个现场控制器270,其中,每个现场控制器与多个DUT连接。每个现场控制器是器件测试中使用的计算机。可在现场控制器上执行测试计划程序,现场控制器在为DUT290执行器件测试的过程中控制测试模块280。现场控制器270与系统控制器连接,系统控制器通过通信总线215控制现场控制器。在一些实施例中,测试开发者无法直接操作现场控制器,相反,在通过通信总线215控制现场控制器的系统控制器201上对开发者执行的操作进行处理。
在一个实施例中,现场控制器270和测试模块280可通过高速光学总线连接。总线开关285具有用于连接现场控制器与测试模块的矩阵结构。使用总线开关285可使现场控制器与任何测试模块280连接,为总线连接的配置提供了灵活性。
器件测试所需的测试模块280一般安装在测试系统的测试头上。可根据目标器件改动测试模块的配置。器件测试所需的一组测试模块280称为测试现场。每个测试现场295由现场控制器控制。可存在用于多种应用的各种类型的测试模块。一些示例类型的模块包括同步发生器模块、同步矩阵模块、器件电源模块、模拟模块、RF模块和数字模块。
已知的是,测试计划或测试程序包括在ATE系统上进行半导体器件测试所需的所有用户定义数据和控制流程。更具体地,测试计划是以测试仪软件的语言(例如,OTPL)描述满足器件规格的测试条件、测试条件与测试算法的组合以及测试流程的程序。测试计划一般在现场控制器上运行。测试程序中规定应用于DUT的单项测试序列的主要控制流程,以及应用测试的顺序(取决于单项测试的结果),称为测试程序流程。
为DUT编写测试程序时,一般来说,程序的主要部分是器件测试的“数据”,其余部分是实现测试方法本身的程序代码。数据与DUT有关(例如,电源条件、信号电压条件、时序条件等)。测试代码可由将指定器件条件加载到测试仪硬件上的方法,以及实现用户指定目标(例如,数据记录)所需的方法等组成。ATE框架还可提供与硬件无关的测试和测试仪对象模型,使用户执行DUT测试编程任务。
由于测试方法是器件测试质量和测试仪生产的重要组成部分,通常将其封装起来,与最终用户隔离。这种隔离能保证系统的安全操作。另外,为了增加测试代码的可重用性,这种代码应与任何器件特有数据(例如,引脚名称、刺激数据等)或器件测试特有数据(例如,直流单元的条件、测量引脚、目标引脚的数量、图形文件的名称、图形程序的地址等)无关。如果用这些类型的数据编译测试的代码,测试代码的可重用性会下降。因此,在执行代码期间,任何器件特有数据或器件测试特有数据应在外部作为可用于测试代码的输入。
在常规ATE测试仪软件中,“测试类”为特定类型的测试实现了测试数据和代码的分离(因此也实现了代码的可重用性)。可将这种测试类视为仅在器件特有和/或器件测试特有数据上互不相同的不同的测试实例的“模板”。测试类一般在测试计划文件中指定。每个测试类一般实施特定类型的器件测试或为器件测试实施特定类型的设置。例如,测试仪软件可提供测试类样本,以实施功能测试、交流参数测试和直流参数测试。由此,测试类是测试的模板。测试类本身中并不对器件有关的测试条件进行描述。仅描述用测试系统执行测试的算法。
测试类提供用于指定该测试的特定实例的选项的参数,从而使用户配置类行为。例如,用于实施功能测试的测试类可提供指定在被测DUT上执行的测试模式的参数。另外,还可提供指定测试级别和时序条件的参数。为这些参数指定不同的值能使用户创建功能测试的不同实例。在一个实施例中,测试类是用常规编程语言(例如,C++)开发的。
在TSS等测试仪软件系统中,可以OTPL等测试编程语言描述测试计划,如上文所述。OTPL可用于描述测试执行序列和所使用的对应测试条件。虽然OTPL可描述测试计划,但其通常不描述任何测试算法。例如,可在测试类中用C++语言描述TSS等系统中的测试算法,如上文所述。
下文在TSS测试仪软件的场境下对本发明进行讨论,其中,测试计划是用OTPL开发的,测试类是用C++开发的,但本发明并不限于该实施例。在其他实施例中,可采用使用不同编程语言的其他类型的测试仪软件。本领域的普通技术人员应理解的是,本发明的教示可涵盖所附权利要求所限定的本发明的精神和范围内可包括的替代方案、变形例和等效方案。
图3图示了可从单个测试类中创建不同测试实例的方法的示意图。在图3的示例中,测试类310可用于创建测试“TestTypeX”的三个单独实例。三个实例,即实例1 320、实例2 340和实例3 350均接收用于测试的每个实例的单独一组参数数据。例如,实例1 320接收参数数据330,而其余实例接收各自的一组参数。
在常规测试仪系统中,测试仪系统软件可提供验证适当参数是否可包括在生成的源代码内的机制。测试仪系统软件提供了一种方法,使测试类开发者在每个测试类的基于文本的源文件中将开发者已指定的测试类的公用方法和属性完全指定为使该类参数化所需的公用方法和属性。在文本文件中指定其方法和属性能使测试仪软件易于确定适当参数是否可用,便于在编译阶段对测试计划进行错误检查和验证。在常规ATE系统中,该基于文本的描述嵌入测试类的预编译头文件中,该预编译头文件被测试仪软件中的编译器用于确定测试类的方法和属性。另外,其还被编译器用于生成测试类的头。在一个实施例中,与测试类本身相似的测试类的头还可采用常规编程语言,例如,C++。生成的C++头文件用于最终编译测试类C++代码。同时,可以利用与测试仪系统的编程语言(例如,OTPL)或测试仪系统的编程语言的子语言(例如,OTPL的子语言)相同的语言开发预编译头文件。
图4图示了测试计划中的测试类实例化的一个示例。参见图4中对示例OTPL源文件的摘录,其中包含测试实例“FuncTest1”。系统控制器201的OTPL处理器需要知道“MyFunctionalTest”测试类表示什么意思,以确定图4中的FuncTest1的声明是否合法。“MyFunctionalTest”类所含的定义可在预编译头文件中以OTPL的预编译头子语言指定,而不是将“MyFunctionalTest”的知识加入到语言中。
如图4所示,“MyFunctionalTest”是具有包括“PListParam”和“TestConditionParam”的成员的C++类。OTPL编译器需要了解“MyFunctionalTest”的成员,以识别图4中的“FuncTest1”的声明合法。另外,为了生成“FuncTest1”的C++对象声明,需要构建“MyFunctionalTest”类的C++头。这要求OTPL编译器也了解“MyFunctionalTest”类的任何基类、其成员的名称和其他这种信息。
预编译头文件和预编译头子语言为OTPL编译器提供了其识别OTPL声明的合法性、并生成C++头和与OTPL声明对应的对象声明所需的信息。另外,预编译头和OTPL的预编译头子语言可允许生成测试类的C++头文件。另外,对照在其预编译头文件中为各个测试类指定的一组参数,对图4的代码中所示的参数,例如,min、max和patList1等进行验证。
图5图示了采用OTPL预编译头文件作为示例的预编译头文件的基本结构。预编译头文件包括两个主要部分。第一部分550可包括测试类的OTPL定制,其中包括诸如测试类的名称、其C++DLL名称(如果需要)、支持各种自动代码生成特征的选项以及测试类参数定义部分之类的规范。
如上文所述,预编译头文件用于创建C++头文件,以将OTPL编译器生成的C++代码编译成可执行测试类。因此,为了获得预期功能性,可能需要以C++编写的测试类扩展代码。预编译头文件中的第二部分560用于使C++的测试类特有测试类扩展代码支持将测试类C++代码扩展到由前一部分(即,定制OTPL)中的规范自动生成的范围之外。应注意的是,由于OTPL编译器可能只从第一部分中创建有效C++测试类头,因此可能不需要第二部分。
在图5的ATE系统的测试类开发期间,一般创建三种类型的文件。第一种是C++源文件。成员功能等测试类功能在C++源文件中实施。测试类开发者一般根据测试算法创建C++源文件。
创建的第二种类型的文件是C++头文件。一般在C++头文件中声明测试类的成员数据和成员功能。测试类中的数据成员名称和成员功能名称一般在C++头文件中定义。如上文所述,测试类头文件一般从OTPL预编译头文件中生成,其示例结构如图5所示。因此,测试类开发者并不创建头文件,头文件由OTPL编译器从测试类预编译头文件自动生成。
第三种类型的文件是OTPL预编译头文件。将OTPL预编译头文件导入到OTPL测试计划文件中。一般来说,测试类开发者首先创建预编译头文件。预编译头文件中一般还描述测试类参数定义。在常规系统中,测试类预编译头文件一般从零开始创建,这要求用户熟悉文件创建语法并手动编写代码。
在一个实施例中,创建三种类型的文件还有一个自然顺序。预编译头文件被首先创建,因为它用于生成随后生成的C++头文件。最后,C++源文件内的源代码在编译期间使用C++头文件,并创建测试类DLL。
本发明的实施例通过为测试类开发者提供测试类预编译头编辑器,解决了这个问题,测试类预编译头编辑器包括图形用户界面,图形用户界面可用于通过用拖放和其他交互操作与GUI交互而定义预编译头文件。在一个实施例中,该预编译头编辑器可作为商用集成开发环境(IDE)(例如,Microsoft Visual Studio)的插件而提供给用户。预编译头编辑器协助测试类开发者进行创建测试类预编译头文件的任务,并有利地使这个过程更简单、快速、不易于出错。
在一个实施例中,预编译头编辑器通过图形用户界面从测试类开发者获得关于测试类的基本信息,并创建预编译头。这减轻了开发者记住语法、测试类参数的类型和属性的负担。
另外,在一个实施例中,所述预编译头编辑器可提供预编译头的两种不同视图,以协助对其进行编辑的任务。首先,可提供设计视图,设计视图是一种能使用户访问预编译头文件的所有元素的GUI,因此用户只需要填入这些元素的值。
其次,可提供代码视图,这是预编译头文件的一种简单、直接的文本表示,可使用户直接编辑预编译头的文本。
在一个实施例中,用户可自由使用其偏好的视图,并可在需要时在两者之间切换。所述预编译头编辑器管理视图的同步,使用户只需专心编码任务。图6图示了根据本发明一个实施例的可使界面在代码视图与设计视图之间切换的GUI。一旦将预编译头文件加载到IDE之后,用户可容易地在下拉菜单中的两个上下文菜单项之间进行选择,使用户易于在设计视图650与代码视图660之间切换。
在一个实施例中,编辑器在与测试类开发相同的环境下创建预编译头文件,因为编辑器是与开发测试类所用的IDE相同的IDE的插件。
在另一个实施例中,设计编辑器的GUI可使用户选择或输入用于生成预编译头文件的各种属性的值。如上所述,用户在设计编辑器中做出更改时,预编译头文本文件自动更新这些更改。但是,在设计视图中保存对预编译头文件所做的更改时,会检查已编辑版本是否存在语法和语义错误。如果存在任何错误,不会生成测试类头文件。
在预编译头编辑器的代码视图中,预编译头文件的内容显示在IDE内的文本编辑器中。做出更改之后保存预编译头文件时,会检查预编译头文件是否存在语法和语义错误,如果存在任何此类错误,会通过普通的IDE错误记录机制显示出来。如果代码视图中存在错误,编辑不会阻碍用户保存文件,但是,其中存在语法错误的预编译头的设计视图将不再是可操作的。只要保存代码编辑器信息时没有任何错误,预编译头编辑器会自动生成测试类C++头文件。
另外,在一个实施例中,编辑器可直接从预编译头文件自动生成测试类声明C++头文件。在代码视图或设计视图中保存预编译头文件时,如果没有语法和语义错误,会自动生成测试类C++头文件。C++头文件在用户开发的测试类与测试计划作者开发的测试计划之间提供公用定义桥。
图7图示了根据本发明一个实施例的预编译头编辑器的一个示例设计视图模式。编辑器中的字段可分组成三个类别,每个类别显示在单独的标签页中。如图7所示,第一类别750可用于输入参数,包括指定测试类参数的字段。第二类别760可用于一般属性,包括指定关于测试类的基本信息(例如,测试类名称、基本测试类名称等)的字段。最后一个类别770可用于C++定制,包括指定测试类扩展代码的字段。
在参数类别内,如图7所示,存在两种显示参数信息的网格控件。参数信息780可包含所有参数的信息。参数属性790可包含与在参数信息780网格中选择的参数对应的更多具体信息。在一个实施例中,用用户可更改的默认值对编辑器内的每个参数进行预定义。
参数信息780网格还可显示从其他基本测试类预编译头中继承的参数795。参数795在显示时变暗,无法编辑。但是,通过显示参数795,可使用户直观地看到从其他基本测试类中继承的参数,从而防止用户挑选任何冲突的重复参数名称。因此,GUI使创建预编译头文件的过程不易出错。
在一个实施例中,参数类别750还可包括“插入”和“删除”按钮720,便于添加和删除参数。
在一个实施例中,编辑器的GUI还可使用户定义参数组的属性,例如,图7中的参数组730。参数组起数据结构的作用,可使用户将一组单独参数作为单一实体。
因此,图形用户界面的设计视图为用户提供了输入参数信息的模板,参数信息随后可用于自动生成预编译头代码。
图8是根据本发明一个实施例的示例软件过程的原理框图,图示了利用自动测试系统的图形用户界面生成预编译头文件的过程及预编译头文件的功能。
在一个实施例中,用户利用图形用户界面805在预编译头编辑器中输入关于各种测试类的必要参数的所有信息、其他基本属性,以及测试类扩展代码。关于参数的信息可包括参数名称、其允许值、其类型等。如上所述,用户可通过预编译头编辑器的设计视图或代码视图输入该信息。
编辑器自动生成预编译头文本文件810。如上所述,用户在编辑器的设计视图中做出更改时,如果没有错误,预编译头文本文件自动更新这些更改。
编辑器还可直接从预编译头文件自动生成测试类声明C++头文件815。生成的C++头文件用于最终编译测试类C++代码835。C++测试类代码835被编译成二进制DLL文件,该文件可加载到测试仪系统软件820中,以供执行。
在验证阶段,测试仪系统软件820(也称为“测试仪操作系统”)对测试计划作者开发的测试计划OTPL代码850进行读取,并分析其是否存在错误。预编译头文件810被测试仪操作系统820用于描述测试类和测试类所需的参数。通过描述测试类,预编译头文件可使测试仪系统软件820验证是否将适当参数传递到测试类的各个实例。
OTPL代码850随后与二进制DLL测试类文件875一起加载到测试仪系统软件820中。在一个实施例中,验证OTPL代码850之后,测试计划代码850将测试类实例化,并使用预编译头文件810中的信息确定用于测试类实例化的适当参数。测试仪操作系统820可基于预编译头文件810中提供的信息填充各个测试类的参数。例如,在图8中,所述测试仪操作系统可读取模式列表890和模式895,所述图形列表890和图形895可用作在OTPL代码850内实例化的某些测试类的参数。这样,预编译头文件实现了测试类的参数化。随后由测试仪系统软件820执行测试计划825。
图9描绘了根据本发明一个实施例的利用图形用户界面生成预编译头文件、编译测试类以生成可执行DLL、并利用预编译头文件和编译的测试类执行测试计划的示例计算机控制过程的流程图。但是,本发明并不限于流程图900提供的描述。相反,相关领域的技术人员应理解的是,根据本文提供的教示,本发明的范围和精神也包括其他功能流程。下文将继续参照上文所述的示例实施例对流程图900进行说明,但所述方法并不限于这些实施例。
在步骤902中,预编译头编辑器的设计视图的图形用户界面805从测试类作者获得关于测试类参数的信息、关于测试类的其他基本信息(例如,测试类名称、测试基类名称等)以及任何测试类扩展代码。
在步骤904中,编辑器基于用户输入的信息直接从图形编辑器的显示视图中生成预编译头文本文件810。
在步骤906中,编辑器还可直接从预编译头文件810自动生成测试类声明C++头文件815。
在步骤908中,测试仪操作系统820利用预编译头文件中的参数和其他信息执行验证。将验证的测试计划与编译的DLL文件875(与各个测试类835对应)一起加载到测试仪系统软件820中。
应注意的是,一般可从测试类单独、独立地开发测试计划。更具体地,预编译头是测试类人工产品。可在后续阶段开发使用测试类及其预编译头的测试计划。由此,步骤908处的验证阶段可在生成预编译头文件之后的后续单独阶段执行。
在步骤910处,测试计划由测试仪系统软件820利用编译的DLL文件875执行。但是,在执行之前,测试计划中的测试类被实例化,并被填充预编译头文件中指定的参数。由此,还使用将每个测试类实例化的唯一一组参数,将所有测试类实例作为测试计划内的测试流程的一部分而执行。
以上公开内容使用具体框图、流程图和示例对各个实施例进行了说明,可采用各种硬件、软件或固件(或其任何组合)配置以单独和/或组合的方式实施本文所述和/或所示的每个框图部件、流程图步骤、操作和/或部件。另外,由于可通过实施多种其他结构来实现相同功能性,应将其他部件中包含的部件的任何公开视为示例。
本文所述和/或所示的过程参数和步骤序列仅为示例。例如,虽然可以特定顺序显示或讨论本文所示和/或所述的步骤,但并不一定必须以所示或所述顺序执行这些步骤。本文所述和/或所示的各个示例方法还可省略本文所述或所示的一个或多个步骤,或包括除公开步骤之外的其他步骤。
本文是在完全有效的计算系统的场境下对各个实施例进行叙述和/或图示,但无论用于实际进行分布的计算机可读介质属于什么特定类型,可将这些示例实施例中的一个或多个分布成各种形式的程序产品。还可利用执行特定任务的软件模块实施本文公开的实施例。这些软件模块可包括可存储在计算机可读存储介质上或计算系统内的脚本、批处理文件或其他可执行文件。这些软件模块可使计算系统执行本文公开的一个或多个示例实施例。本文公开的一个或多个软件模块可在云计算环境下实施。云计算环境可通过互联网提供各种服务和应用。可通过网页浏览器或其他远程界面访问这些基于云的服务(例如,软件即服务、平台即服务、基础设施即服务等)。本文所述的各种功能可通过远程桌面环境或任何其他基于云的计算环境提供。
为了便于解释,以上说明是参照特定实施例进行的。但是,上述图示说明并不旨在具有穷举性,或者说,并不旨在将本发明限制为所公开的具体形式。可根据上述教示进行多种变形和改变。对所述实施例的选择和说明的目的在于深入解释本发明的原理及其实际应用,以便于本领域的其他技术人员用适合预期特定用途的各种变形例充分使用本发明和各个实施例。
因此对根据本发明的实施例进行了说明。尽管已在特定实施例中对本公开进行了说明,但应理解的是,不应认为这些实施例限制了本发明,相反,应根据以下权力要求理解本发明。

Claims (19)

1.一种用自动测试设备(ATE)执行测试的方法,所述方法包括:
利用图形用户界面获得有关至少一个测试类的信息;
自动生成第一头文件,其中所述第一头文件的内容包括所述信息;
将所述第一头文件导入测试计划,所述测试计划操作以利用测试仪操作系统执行,其中,所述测试仪操作系统安装在系统控制器上,其中,所述测试计划包括所述至少一个测试类的实例,并且其中,所述测试计划操作以定义将在与所述系统控制器通信耦接的多个被测器件(DUT)上运行的测试;
从所述第一头文件中自动生成第二头文件,其中,所述第二头文件是所述至少一个测试类的头文件,并且其中,所述第二头文件和所述至少一个测试类是用公用编程语言编制的;
利用所述测试仪操作系统验证所述测试计划;并且
将所述测试计划和至少一个编译模块加载到所述测试仪操作系统中,以供执行,其中,所述至少一个编译模块中的每个编译模块是所述至少一个测试类中的各个测试类的编译译文,并且其中,所述第二头文件用于生成所述至少一个编译模块。
2.如权利要求1所述的方法,还包括:
用所述第一头文件中的所述信息将所述至少一个测试类实例化;并且
执行所述测试计划。
3.如权利要求1所述的方法,其中,所述信息包括测试类参数定义。
4.如权利要求1所述的方法,其中,所述信息包括用于识别所述至少一个测试类的定义。
5.如权利要求1所述的方法,其中,所述信息包括所述至少一个测试类的扩展代码。
6.如权利要求1所述的方法,其中,所述图形用户界面包括第一窗口和第二窗口,其中,所述第一窗口操作以显示多个测试类参数的信息,并且其中,所述第二窗口操作以显示与在所述第一窗口中选择的测试类参数对应的信息。
7.如权利要求6所述的方法,其中,用默认值将所述多个测试类参数初始化,而且其中,所述多个测试类参数的值操作以由用户编辑。
8.如权利要求1所述的方法,还包括:将所述信息保存到所述图形用户界面的图形编辑器中,并响应于用户输入,自动检查语法和语义错误。
9.如权利要求1所述的方法,其中,所述图形用户界面包括:
文本编辑器模式;以及
显示编辑器模式。
10.如权利要求9所述的方法,还包括:自动将在所述显示编辑器模式中所做的更改与所述文本编辑器模式同步,并还包括:自动将在所述文本编辑器模式中所做的更改与所述显示编辑器模式同步。
11.一种计算机可读存储介质,其上存储有计算机可执行指令,如果计算机系统执行所述计算机可执行指令,会使计算机系统执行用自动测试设备(ATE)执行测试的方法,所述方法包括:
利用图形用户界面获得有关至少一个测试类的信息;
自动生成第一头文件,其中,所述第一头文件的内容包括所述信息;
将所述第一头文件导入测试计划,所述测试计划操作以利用测试仪操作系统执行,其中,所述测试仪操作系统安装在系统控制器上,其中,所述测试计划包括所述至少一个测试类的实例,并且其中,所述测试计划操作以定义将在与所述系统控制器通信耦接的多个被测器件(DUT)上运行的测试;
从所述第一头文件中自动生成第二头文件,其中,所述第二头文件是所述至少一个测试类的头文件,并且其中,所述第二头文件和所述至少一个测试类是用公用编程语言编制的;
利用所述测试仪操作系统验证所述测试计划;并且
将所述测试计划和至少一个编译模块加载到所述测试仪操作系统中,以供执行,其中,所述至少一个编译模块中的每个编译模块是所述至少一个测试类中的各个测试类的编译译文,并且其中,所述第二头文件用于生成所述至少一个编译模块。
12.如权利要求11所述的计算机可读存储介质,其中,所述方法还包括:
用在所述第一头文件中选择的所述信息将所述至少一个测试类实例化;并且
执行所述测试计划。
13.如权利要求11所述的计算机可读存储介质,其中,所述信息从包含测试类参数定义、用于识别所述至少一个测试类的定义、所述至少一个测试类的扩展代码的群组中选出。
14.如权利要求11所述的计算机可读存储介质,其中,所述图形用户界面包括:
文本编辑器模式;以及
显示编辑器模式。
15.如权利要求14所述的计算机可读存储介质,其中,所述方法还包括:
自动将在所述显示编辑器模式中所做的更改与所述文本编辑器模式同步;并且
自动将在所述文本编辑器模式中所做的更改与所述显示编辑器模式同步。
16.如权利要求11所述的计算机可读存储介质,还包括:所述信息保存到所述图形用户界面的图形编辑器中,并响应于用户输入,自动检查语法和语义错误。
17.如权利要求11所述的计算机可读存储介质,其中,所述图形用户界面包括第一窗口和第二窗口,其中,所述第一窗口操作以显示多个测试类参数的信息,并且其中,所述第二窗口操作以显示与在所述第一窗口中选择的测试类参数对应的信息。
18.一种用于执行自动测试的系统,所述系统包括:
存储器,存储在其中的测试仪操作系统;
通信接口,操作以与多个被测器件(DUT)连接;
处理器,与所述存储器和所述通信接口耦接,所述处理器被配置为根据测试仪操作系统操作,进行以下操作:
利用图形用户界面获得有关至少一个测试类的信息;
自动生成第一头文件,其中,所述第一头文件的内容包括所述信息;
将所述第一头文件导入测试计划,所述测试计划操作以利用所述测试仪操作系统执行,其中,所述测试计划包括所述至少一个测试类的实例,并且其中,所述测试计划操作以定义将在所述多个被测器件上运行的测试;
从所述第一头文件中自动生成第二头文件,其中,所述第二头文件是所述至少一个测试类的头文件;
利用所述测试仪操作系统验证所述测试计划;并且
将所述测试计划和至少一个编译模块加载到所述测试仪操作系统中,以供执行,其中,所述至少一个编译模块中的每个编译模块是所述至少一个测试类中的各个测试类的编译译文,其中,所述第二头文件用于生成所述至少一个编译模块。
19.一种用于生成头文件以在自动测试设备(ATE)中使用的方法,所述方法包括:
利用图形用户界面获得有关至少一个测试类的信息;
自动生成第一头文件,其中,所述第一头文件的内容包括所述信息;
将所述第一头文件导入测试计划,所述测试计划操作以利用测试仪操作系统执行,其中所述测试仪操作系统安装在系统控制器上,其中所述测试计划包括所述至少一个测试类的实例,并且其中所述测试计划操作以定义将在与所述系统控制器通信耦接的多个被测器件(DUT)上运行的测试;并且
从所述第一头文件自动生成第二头文件,其中所述第二头文件是所述至少一个测试类的头文件,并且其中所述第二头文件和所述至少一个测试类是用公用编程语言编制的;
其中,所述图形用户界面包括显示编辑器窗口和文本编辑器窗口,而且其中,在所述显示编辑器窗口中所做的更改自动映射到所述文本编辑器窗口中的对应更改,而且其中,在所述文本编辑器窗口中所做的更改自动映射到所述显示编辑器窗口中的对应更改。
CN201480022510.7A 2013-04-30 2014-02-05 从交互式图形用户界面中自动生成测试类预编译头 Active CN105143895B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/874,380 US9785526B2 (en) 2013-04-30 2013-04-30 Automated generation of a test class pre-header from an interactive graphical user interface
US13/874,380 2013-04-30
PCT/US2014/014921 WO2014178930A1 (en) 2013-04-30 2014-02-05 Automated generation of a test class pre-header from an interactive graphical user interface

Publications (2)

Publication Number Publication Date
CN105143895A CN105143895A (zh) 2015-12-09
CN105143895B true CN105143895B (zh) 2018-11-13

Family

ID=51789949

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480022510.7A Active CN105143895B (zh) 2013-04-30 2014-02-05 从交互式图形用户界面中自动生成测试类预编译头

Country Status (4)

Country Link
US (1) US9785526B2 (zh)
KR (1) KR102141262B1 (zh)
CN (1) CN105143895B (zh)
WO (1) WO2014178930A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9217772B2 (en) * 2012-07-31 2015-12-22 Infineon Technologies Ag Systems and methods for characterizing devices
CN104463681A (zh) * 2013-09-17 2015-03-25 深圳富泰宏精密工业有限公司 测量报告生成系统及方法
CN104698368B (zh) * 2015-04-01 2017-11-10 山东华芯半导体有限公司 一种实现芯片顶层测试用例重用的方法
US9971644B2 (en) * 2015-12-24 2018-05-15 Intel Corporation Serial I/O functional tester
US10379158B2 (en) * 2017-02-09 2019-08-13 Advantest Corporation Real-time capture of traffic upon failure for protocol debug
US10649024B2 (en) * 2017-03-03 2020-05-12 Pioneer Decisive Solutions, Inc. System for providing ATE test programming by utilizing drag-and-drop workflow editing in a time domain environment
US11054974B2 (en) * 2017-10-02 2021-07-06 Fisher-Rosemount Systems, Inc. Systems and methods for graphical display configuration design verification in a process plant
FR3075996B1 (fr) * 2017-12-21 2020-01-31 Bull Sas Systeme et procede d'elaboration et d'execution de tests fonctionnels pour grappe de serveurs
US10880197B2 (en) * 2018-07-13 2020-12-29 Keysight Technologies, Inc. Methods, systems, and computer readable media for testing a network node using source code for programming a packet forwarding plane of the network node
KR102221441B1 (ko) 2019-07-12 2021-03-02 최병삼 무봉제 벨트가 구비된 방수가방
CN111381142A (zh) * 2020-02-21 2020-07-07 上海御渡半导体科技有限公司 一种提高测试流效率的半导体自动测试设备及测试方法
CN112363708B (zh) * 2020-12-04 2023-03-10 中信银行股份有限公司 一种支持Eclipse工具下的上下文保护方法及系统
CN115525561A (zh) * 2022-10-11 2022-12-27 深圳市航盛电子股份有限公司 协议接口测试方法、装置、终端设备以及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101512359A (zh) * 2006-07-10 2009-08-19 阿斯特瑞昂公司 用于在测试系统中实施处理之系统及方法
CN101821642A (zh) * 2007-10-04 2010-09-01 泰拉丁公司 仿真传统测试系统的行为
TW201237439A (en) * 2010-12-22 2012-09-16 Advantest Singapore Pte Ltd Calibration module for a tester and tester

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5313387A (en) 1989-06-30 1994-05-17 Digital Equipment Corporation Re-execution of edit-compile-run cycles for changed lines of source code, with storage of associated data in buffers
US5675803A (en) 1994-01-28 1997-10-07 Sun Microsystems, Inc. Method and apparatus for a fast debugger fix and continue operation
US6106571A (en) 1998-01-29 2000-08-22 Applied Microsystems Corporation Relocatable instrumentation tags for testing and debugging a computer program
US6836884B1 (en) 2001-06-04 2004-12-28 Microsoft Corporation Method and system for editing software programs
US7516441B2 (en) 2001-06-04 2009-04-07 Microsoft Corporation Method and system for program editing and debugging in a common language runtime environment
US7363617B2 (en) 2002-05-23 2008-04-22 International Business Machines Corporation Database breakpoint apparatus and method
US7197417B2 (en) * 2003-02-14 2007-03-27 Advantest America R&D Center, Inc. Method and structure to develop a test program for semiconductor integrated circuits
US7437261B2 (en) 2003-02-14 2008-10-14 Advantest Corporation Method and apparatus for testing integrated circuits
US7209851B2 (en) 2003-02-14 2007-04-24 Advantest America R&D Center, Inc. Method and structure to develop a test program for semiconductor integrated circuits
US20050120274A1 (en) 2003-11-14 2005-06-02 Haghighat Mohammad R. Methods and apparatus to minimize debugging and testing time of applications
US7353427B2 (en) 2004-04-08 2008-04-01 International Business Machines Corporation Method and apparatus for breakpoint analysis of computer programming code using unexpected code path conditions
KR20070023762A (ko) * 2004-05-22 2007-02-28 주식회사 아도반테스토 반도체 집적 회로를 위한 테스트 프로그램을 개발하는 방법및 구조
KR101137569B1 (ko) 2006-06-27 2012-04-19 엘지전자 주식회사 디버깅 시스템 및 방법
KR100860963B1 (ko) * 2007-03-08 2008-09-30 삼성전자주식회사 컴포넌트 기반의 소프트웨어 개발을 위한 장치 및 방법
US7640132B2 (en) 2007-04-23 2009-12-29 Advantest Corporation Recording medium and test apparatus
US20080295114A1 (en) 2007-05-07 2008-11-27 Pramod Vasant Argade Method and apparatus for execution control of computer programs
JP2009176186A (ja) * 2008-01-28 2009-08-06 Tokyo Electron Ltd プログラムテスト装置、およびプログラム
JP5022262B2 (ja) 2008-02-12 2012-09-12 株式会社アドバンテスト デバッグ中にツールを使用可能な試験システム及び方法
JP5091024B2 (ja) 2008-06-24 2012-12-05 株式会社リコー スイッチングレギュレータ及びその動作制御方法
US8782599B2 (en) 2008-06-26 2014-07-15 Invensys Systems, Inc. Multi-mode editor for configuring process control blocks including both logical functions and arithmetic computations
US20100023294A1 (en) 2008-07-28 2010-01-28 Credence Systems Corporation Automated test system and method
KR101132560B1 (ko) * 2010-06-09 2012-04-03 강원대학교산학협력단 로봇 소프트웨어 컴포넌트를 위한 시뮬레이션 기반 인터페이스 테스팅 자동화 시스템 및 그 방법
US8566799B2 (en) 2011-07-15 2013-10-22 International Business Machines Corporation Resuming a prior debug session

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101512359A (zh) * 2006-07-10 2009-08-19 阿斯特瑞昂公司 用于在测试系统中实施处理之系统及方法
CN101821642A (zh) * 2007-10-04 2010-09-01 泰拉丁公司 仿真传统测试系统的行为
TW201237439A (en) * 2010-12-22 2012-09-16 Advantest Singapore Pte Ltd Calibration module for a tester and tester

Also Published As

Publication number Publication date
US20140324378A1 (en) 2014-10-30
KR102141262B1 (ko) 2020-08-04
US9785526B2 (en) 2017-10-10
WO2014178930A1 (en) 2014-11-06
CN105143895A (zh) 2015-12-09
KR20160004283A (ko) 2016-01-12

Similar Documents

Publication Publication Date Title
CN105143895B (zh) 从交互式图形用户界面中自动生成测试类预编译头
US9754059B2 (en) Graphical design verification environment generator
US7979841B2 (en) Programmatically determining calling information of a graphical program
CN112270149B (zh) 验证平台自动化集成方法、系统及电子设备和存储介质
EP2169541B1 (en) Method, system and graphical user interface for configuring a simulator to simulate a plurality of devices
US20080147371A1 (en) User Defined Virtual Instruments in a Simulation Environment
JP7320033B2 (ja) 量子制御パルス生成方法、装置、電子デバイス、記憶媒体、及びプログラム
CN101165694A (zh) 专用集成电路中i/o块的优化布置和验证的方法和装置
US20060036799A1 (en) Multi-platform development and execution of graphical programs
JP6761441B2 (ja) ソフトウェアアプリケーションプログラミングインタフェース(api)を用いた自動テスト機能のユーザによる制御
JP6748671B2 (ja) テストプログラムフロー制御
EP3432229A1 (en) Ability imparting data generation device
US10216495B2 (en) Program variable convergence analysis
Fursin Collective knowledge: organizing research projects as a database of reusable components and portable workflows with common interfaces
EP2187310A2 (en) Method and system for simulating a plurality of devices
US20140214396A1 (en) Specification properties creation for a visual model of a system
CN109388376A (zh) 软件开发风险评估方法、装置、设备及可读存储介质
CN109001581A (zh) 支持使用不同应用的多个用户的测试系统
WO2015116225A2 (en) Test automation modeling
US8935144B2 (en) System and method for examining concurrent system states
CN116720474A (zh) 集成电路设计方法及集成电路仿真系统
CN108885574B (zh) 用于监视和报告设计、编译和运行时的性能和正确性问题的系统
Behjati et al. Model-based automated and guided configuration of embedded software systems
Delmas et al. A verification and validation process for model-driven engineering
CN114647568A (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
GR01 Patent grant
GR01 Patent grant