- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
自动化测试新一代解决方案
3.2 Test Conductor是一个功能完整的测试平台
(1)友好、直观、操作简便的图形化用户界面。
(2)与设备无关的操作可以进行任何设备供应商的测试。
(3)具有一个强大的DUT配置模块,它可以从多种接口类型连接的DUT上记录和重放DUT的配置指令。方便用户配置,实现图形化到脚本的一键转化。用户再也不用编写复杂的Tcl配置脚本来配置DUT。
DUT配置脚本中的关键参数可做变量替换,方便用户在多种环境下进行使用。同时,DUT配置模块还可以进行设备验证,数据清除和监控等功能。
(4)运行调度器,它使用一个Outlook?类型的日历,方便用户定义调度时序。测试可以按照顺序执行或者并行执行的方法使测试资源得到最大的优化利用。
(5)包括DUT在内的各种资源获取的实时数据可以完整一些扩展功能,如使用这些数据进行计算和判定测试成功与否。
(6)测试完毕后,自动E-mail通告测试结果。
(7)可自定义的测试和回归测试报告。
(8)回归趋势分析。以时间为基准的回归趋势可以很方便地查看。基线数据可以从单次运行结果和多次运行结果的平均值来读取。
(9)测试床管理,基于某个特定环境的端口配置可以很方便地映射到另外一个兼容的测试环境中。
(10)集中式的数据库管理所有的DUT配置脚本,测试床定义,测试本体,以及回归测试调度和运行结果。
(11)整合了Mercury Quality Center,用户可以在QC中开始、停止和检测回归测试,回归测试的结果也会传入QC,所有的测试结果也会上传保存在QC中。
4 Test Conductor特性介绍
Test Conductor是完整的回归测试调度工具,易于使用,具有高度的可扩展性。Test Conductor与IXIA的其它主要测试产品相兼容,可以导入测试,与已有的回归测试配置相关联,并可以定义详细的调度属性。用户可使用类似Windows Outlook的日历工具控制测试以串行或并行方式执行。概览日志和摘要报告使工程师可以察看以不同颜色显示的测试通过/失败,以及每次回归测试的进行过程。用户还可使用自动化的被测设备(DUT)配置脚本,将其与单个测试或整个回归测试同步运行。
4.1 Test Conductor层次结构
Test Conductor作为综合测试平台可以调用和管理3类程序或接口(见图5):
图5 IXIA Test Conductor自动化测试平台结构示意图
(1)IXIA应用程序(在下面特性介绍会有详细内容);
(2)DUT控制和管理程序;
(3)第三方脚本或者应用程序。
如图6所示,Test Conductor的管理和执行测试在逻辑上分为4层:
图6 Test Conductor的管理和执行测试示意图
(1)Console。用户的操作接口,用户在这个GUI上管理和操作测试,读取测试结果。
(2)Test Conductor Server。所有数据的整理和分析。
(3)IXIA Application。运行各种IXIA的应用程序的终端。
(4)IXIA测试设备。
4.2 Test Conductor对各种IXIA应用程序的支持
Test Conductor可以读取各种IXIA测试应用程序的配置文件进行测试,这是新一代的测试方式,省却了用户编写脚本和程序的过程,使用户可以快速部署自动化测试和回归测试。Test Conductor v1.10支持的IXIA应用程序测试包括:IxLoad,IxAutomate,IxANVL,IxChariot,Generic Driver第三方的应用程序或脚本。
IxNetwork在计划中,Test Conductor很快将支持IxNetwork的RFC2544等各种整合性能测试套件。
4.3 Test Conductor测试库
在一般情况下,测试配置是由测试部门或测试中心的专家创建,而当测试真正开始使用时,专家同样需要创建一个集中式的数据库来存放所有的配置文件。该数据库可以通过图形化的编辑器访问,这样使其他测试工程师也可以重用数据库中的配置数据。使用图形化的数据库工具,工程师不用编程就可以将数据库中的配置文件通过简单的组合修改实现回归测试场景。
随着测试和配置数目的增加,必定需要更多灵活有效的组合机制来实现各种有效的测试组合完成更复杂的测试。Test Conductor可以指定单个测试和回归测试套的自定义属性,测试工程师可以根据特定的标准来过滤出配置文件,如客户可能需要从海量的配置文件中快速定位出以前做的适合他的标准配置文件,或创建一个特定的DUT的脚本的修订版。
当测试配置的数目更大,在同一标准属性下存在过多的测试配置的时候,测试工程师需要定义比标准属性更细的分类。Test Conductor的原则是,工程师将原始测试的属性定义的越好,这个脚本的重用性将更高。
4.4 DUT配置管理
Test Conductor的DUT配置管理(DCM)模块是一个功能强大的一代DUT配置和管理工具,它的特点是配置和监测DUT的脚本和从各种资源的自动生成:从一个和DUT的会话中捕获响应,预定义模版,使用脚本语言编程等。通常的应用方法是在测试调度器和DUT之间进行自动化的通信以进行DUT的配置和监测。
DUT的配置步骤通常需要一系列的参数定义,无论是进行一个特性的测试或是一个回归测试套,DUT都必须首先配置到正确的状态,然后测试完毕后必须使DUT返回到出厂默认值状态。这些步骤中的DUT指令根据厂商的不同,指令也不尽相同,一个测试工程师很难掌握所有厂家的DUT的所有可能的指令,为了使用方便,Test Conductor可以帮助用户捕获和记录这些指令并保存,并可以将指令分块,为每个特定的DUT配置功能进行指令模块划分,如配置一个接口或者使用一个路由协议。
Test Conductor在测试中维持4种特定的使用过程:
(1)"Setup Event"。它使用默认的配置初始化DUT来执行测试例。
(2)"Validate Event"。它将验证Test Case本体并检测DUT是否正确响应。这种过程包含了自动化的检查过程中包括的DUT参数或统计数据(如计时器,接口状态等)。
(3)"Cleanup Event"。它将DUT复位到出厂默认状态。
(4)事件驱动。测试人员经常需要手动检测DUT的计数器,操作日志以及错误状态等,这些信息是不定时产生的。所以需要一个自动化测试的调度器提供一种自定义的过程在后台执行测试和回归套件,Test Conductor提供的后台检测的过程满足了这种需要。以往的种种经验表明,一个完整的DUT配置和清除过程是必要的,它可以保证在任何测试套件或大型回归测试中DUT的状态稳定,不会产生意外的情况,保证测试的惟一和结果的稳定性。
4.5 回归测试管理
(1)用户可以选择任意测试例进行组合,以Group的形式进行回归测试。
(2)按照并行或者串行的方式运行测试例。
(3)按照一般顺序、反序或随机顺序执行测试。
(4)用户可以选择在执行错误时停止或继续执行测试。
4.6 测试资源的指定
(1)自动搜索用户PC中已经安装的IXIA的应用程序,并添加到Test Conductor的资源列表中。
(2)在一台PC中支持多种应用程序,包括IXIA应用程序和其他支持的各种类型程序。
4.7 从配置文件中创建测试
Test Conductor秉承了IXIA自动化测试的核心思想,即"所见即所得"的自动化测试方式,用户无需编写任何脚本即可进行自动化测试和回归测试。
创建一个测试的方法非常简单,我们以IxChariot为例,用户首先需要在IxChariot中进行测试,并保存配置文件,如Thruput.tst,在Test Conductor可以方便地导入该配置文件,Test Conductor的底层已经为各种IXIA的应用程序做了完整的识别功能,测试配置导入Test Conductor后,各种测试参数可被完全识别。用户可以通过这种简单快捷的方式完成一个测试例的创建。
4.8 自定义指定测试成败的类型和标准
Test Conductor另外一个重要特性就是用户可以自定义测试成功/失败的标准,在一般的测试软件中一般只提供测试结果,是否成功需要用户分析判断,而Test Conductor可以将所有可能的测试结果类型以列表的形式提出,用户选择特定的测试结果,并定义其通过标准,如定义类型是吞吐量,通过标准是"≥90",这样做的好处是用户在大型回归测试中对于海量的测试结果不必再逐项分析,只要检查最后是否通过即可。只要定义完整,测试效率可大大提升。
4.9 回归测试运行调度器
Test Conductor回归测试运行调度器使用一个类似Outlook?日历的工具,用户可方便地通过这个工具定义和调度时序。测试可以按照串行执行或并行执行的方法使测试资源得到最大的优化利用。
4.10 监测运行状态和结果
Test Conductor提供了一种列表式的运行状态和结果的监测工具,用户可以在任何时候查看运行状态和众多测试例中的任何一个测试的结果。所有状态和结果都以彩色代码显示,易于监测和分析。
5 回顾
Test Conductor是完整的回归测试调度工具,易于使用,具有高度的可扩展性。Test Conductor与IXIA的其它主要测试产品相兼容,可以导入测试,与已有的回归测试配置相关联,可以定义详细的调度属性。用户可使用类似Windows Outlook的日历工具控制测试,执行方式可以是串行也可以是并行。概览日志和摘要报告使工程师可以察看以不同颜色显示的测试通过/失败,以及每次回归测试的进行过程。用户还可以使用自动化的被测设备(DUT)配置脚本,将其与单个测试或整个回归测试同步运行。
Test Conductor特别适合中国客户的测试习惯,因为:
(1)Test Conductor的部署不需要进行大量的人员培训,没有任何编程经验的测试工程师都可以完成复杂的测试。
(2)Test Conductor完全符合产品生命周期的任何阶段的测试,可以帮助用户节省大量在自动化测试上的人员和设备投资,加快产品开发/生产和投放市场的步伐,直接保证投资人的利益。
(3)Test Conductor满足任意规模的公司进行回归测试,它是一个扩展性很强的产品,既可以单机测试,也可以扩展为客户端—服务器—测试仪群的End-to-End模式,用户部署后还可以随时根据自己的需求将测试规模和部署形式任意变化。不仅满足大/中/小公司的测试需求,还满足不同测试端口数目的测试场景。
(4)Test Conductor是一个软件产品,不包含任何硬件投入,用户只要拥有IXIA的各种测试设备和测试工具就可以快速部署测试和回归测试。如果用户没有IXIA的相关设备,也可以在Test Conductor上运行任何的第三方测试脚本或者测试程序,利用Test Conductor强大回归测试功能进行完整的测试。
(5)Test Conductor是一个新一代的测试平台,它在本质上和国内各NEM自己开发的测试平台没有任何冲突,它主要完成的是进行大量的回归测试中的配置和管理功能,而国内各家NEM的平台功能主要是编写脚本,运行脚本,配置DUT,以及小规模的回归测试管理。Test Conductor在分布式回归测试上填补了国内IT测试领域的一个空白。
6 结束语
本文主要介绍了从客户和市场需求到产生Test Conductor产品的历程,以及Test Conductor的一些基本特性,从如何保护投资者利益的角度分析了Test Conductor在中国IT测试领域即将扮演的重要角色。在以后的产品介绍中,我们还将推出Test Conductor的完整测试介绍,使用生动的实例阐述Test Conductor在实战中的各种应用。