TestStand作为一款标准商用测试管理软件,拥有基于图形化的操作界面,具备测试管理软件所要求的测试管理和执行功能,也是NI在自动化测试领域重要的软件开发平台。
TestStand拥有以下主要特点:
1.测试管理和执行
2.支持主流开发环境
3.具有自定制的用户界面设计
4.自动生成报表
下面小编就和大家浅谈一下TestStand基础使用方法的相关知识吧!
本文教程:
TestStand基础使用方法
一、步骤如何使用、设置
1.选择合适版本的TestStand
根据下图TestStand与LabVIEW版本对应表来选择下载哪个版本的TestStand。
2.选择合适版本的TestStand 安装完TestStand后,计算机桌面就会有一个序列编辑器的快捷方式图标,如果没有的话可根据下载路径自行寻找。双击TestStand图标即可打开序列编辑器。如果是第一次运行,会首先弹出一个介绍版本兼容性的窗口,如下图所示,它描述了新版本相比旧版本有哪些方面的变化以及兼容性问题。如果你不希望它在下一次启动还出现的话,可以勾选"Don't Show this Dialog Again"之后再点击OK即可。
3.用户登录窗口 接下来会弹出用户登录窗口如下图所示,默认TestStand已创建一个名称为"administrator"、密码为空的用户,只需要点击OK即可进入序列编辑器的主界面。
4.添加序列步骤 将步骤添加至序列中,可使用以下两种方法。
(1)直接将步骤窗格中需要的步骤拖入至主序列中。
(2)在空白处右键,选择InsertStep→并选择需要的步骤如下图所示:
注意:Pass/Fail Test、Numeric Limit Test、Multiple Numeric Limit Test、String Value Test以及Action为使用任意模块适配器步骤类型。在创建这五种步骤类型的实例时,需要为每个实例声明代码模块。模块适配器类型主要有LabVIEW、LabWin-dows、C/C++DLL等等,我们主要使用LabVIEW来配合使用。
5.创建VI 选中需要编辑的步骤,在步骤属性窗格中,我们可以为该步骤创建VI,并进行编辑。 这里小编提醒大家,如果想要在TestStand中对测试步骤创建VI并编辑,需要先在菜单栏中选中Configure->Adapters,将适配器选择为LabVIEW Development System如下图所示:
按照上图中勾选完成之后点击确定即可按照下图为测试步骤创建并编辑VI。第一次创建VI前先将创建的TestStand序列文件保存到具体路径下,只有这样在创建VI时才可以选择使用相对路径。
6.编辑VI 为步骤创建完VI之后就可以在新建的VI中进行编辑啦。
举个例子,产生一个随机数若大于5则Pass,反之则Fail,是不是非常简单呢。除了Pass/Fail测试之外,数值限度测试、多数值限度测试、字符串测试以及动作的使用方法都与以上所述的Pass/Fail Test十分相似,都是TestStand十分基础的操作,大家可以自行尝试一下使用。
7. 执行序列及其执行方式
编写完LabVIEW程序之后回到TestStand主序列,在菜单栏中选择Execete→Test UUts、Single Pass、Run MainSeqence均可运行如下图所示,这三者的区别是执行入口点不同。
那么这三种执行方式又有哪些特点,可以在什么场景使用呢?
(1)Test UUTs
Test UUTs最大的特点就是连续测试,首先会要求输入序列号,可随意输入UUT的序列号,如"01",然后点击OK。测试完成后会显示最终的测试结果,测试完之后点击OK会再次跳出弹窗要求再次输入序列号,可随意输入如"02",最终也会显示测试结果,如果不点击OK点击了Stop则会结束测试,并生成测试报表。
(2)Single Pass
顾名思义单次执行,与Test UUTs不同的是,它不需要输入测试的序列号并且执行一次后自动结束,结束后自动生成报表,报表中包括测试时间、操作员名称、每个测试步骤的结果等等。
(3)Run Main-Sequence
与以上两者不同的是,该执行方式只执行主序列中的步骤,并且并不会生成报表,只会显示每个步骤的状态(Passed/Failed/Done/…)。
8. 任意模块适配器
除了以上五种使用任意模块适配器步骤类型,还有无模块适配器步骤类型,比较常用的有Statement、Lable、MessagePopup、Flow Control以及Label等。 以Statement为例,我们可以在下方中间的步骤属性设置中找到Statement的一些固有属性,Statement一般用来声明、赋值,如下图所示,我们可以在表达式中输入简单的赋值语句如下图所示。
再以Message Popup为例,如下图所示,与Statement类似,Message Popup是消息弹窗步骤,也拥有自己的固有属性,我们可以将想要在消息弹窗上显示的信息写入Message Expression就可以在弹窗中显示,除此之外还可以将图片、网页等加入到消息弹窗中,均可根据需求来设置属性。
二、如何创建、调用变量:
1. 变量的分类
变量在TestStand中主要可分为Local(局部变量)、Parameters(参量)、FileGlobals(文件全局变量)以及StationGlobals(站全局变量)如下图所示。
其中局部变量的作用范围是最小的,它负责在同一个序列的步骤之间传递数据,一个局部变量对于另一个序列而言是不可见、不可访问的。参量的作用范围则比局部标量稍大一些,有点类似于文本编程中函数的形参,对于序列本身的步骤而言,参量的使用访问和局部变量是没有差别的。
剩下两个全局变量,既然都叫全局变量了想必作用域一定比前两者大很多。对于文件全局变量而言。每个序列文件都可以定义自己的文件全局变量,且在任意序列之间,都可以通过文件全局变量来传递和共享数据,不同于参量局限于调用序列之间。但是一个序列文件的文件全局变量对另一个序列而言还是不可见、不可访问的。
最后最后,站全局变量是TestStand中作用域范围最大的,只要是运行于同一台计算机上的同一个版本的TestStand,任何序列文件之间都可以访问站全局变量。
这里小编需要提醒大家:虽然文件全局变量和站全局变量的作用域范围很大,但是我们不应该滥用两种全局变量。如果局部变量和参量能够满足数据传递的需求,我们应该尽量避免使用全局变量。全局变量的过多使用可能会带来潜在的隐患,因为多个地方都有权限对全局变量进行写操作,在实际应用中任何操作者都有权限对全局变量进行改动,从而导致信息不互通引发种种麻烦。
2. 变量的数据类型
创建变量可以在需要的变量类型下右键选择Insert来选择添加什么类型的数据,下图以添加局部变量为例。TestStand中的数据类型主要有数值型、字符串型、布尔型、对象引用、容器、定义类型以及数组类型。
3. 容器
以上诸多数据类型中,比较特殊的是Container(容器)类,它似于LabVIEW中的簇,在TestStand中称为自定义数据类型。顾名思义就是包含了很多的东西,在TestStand中容器可以包含其他变量和属性。如下图所示,创建了一个容器,其中添加了两个属性"number"和"Boolean",分别是数值型和布尔型。在实际项目中,我们可以根据需要创建多种不同的容器。
4. 子序列及调用变量
需要调用变量,我们可以结合调用子序列来一起使用。
首先在序列窗格中新建一个序列作为子序列并在子序列中创建一个参量z、值为0。
随后在步骤窗格中找到SequenceCall来调用,选中Sequence Call后在步骤属性设置窗格中勾选Use Current File并在Sequence中下拉选择新建的子序列名,这时会在"参量"一栏自动列举出子序列中的所有参量。
在Value中输入Locals.x,注意HowPassed中数据的传递方式是By Reference,即可完成调用子序列。
我们创建一个局部变量为x、值为0,随后在调用子序列的步骤前添加一个Statement,写一个为Locals.x赋值的语句"Locals.x=7",再为子序列添加一个Statement,在表达式中写入"Parameters.z += 2"。
之后我们在主序列中添加一个MessagePopup步骤来让结果显示更加明确,在Message Expression中输入"修改后z的值为"+Str(Locals.x)。
最后我们选择Single Pass执行,观察结果。
可以发现一开始局部变量x的值为7,在跳转到子序列后,先将主序列的局部变量x的值赋给了子序列的参量z,再执行了子序列中z+2的声明步骤,最后得到z的值为9。
审核编辑:刘清
全部0条评论
快来发表一下你的评论吧 !