最近更新|软件分类|软件专题|软件排行|手机版|软件发布NI TestStand 2019中文版 v19.0(附注册机)
您的位置:首页>行业软件 > 辅助设计>NI TestStand 2019中文版 v19.0(附注册机)

NI TestStand 2019中文版 v19.0(附注册机)测试管理软件

网友评分:

相关软件

软件介绍

NI TestStand 2019破解版是一款非常专业的测试管理软件,这款软件借助TestStand的内置适配器,您可以调用以任何编程语言编写的代码,扩展测试序列的功能。另外TestStand 2019引入了一个生成PDF报告的选项,该报告看起来与通过结果处理器生成的报告相同。所以小编为大家准备好了破解版,教程如下,有需要的赶紧来下载吧!

NI TestStand破解教程

1,加载ni-teststand-2019_19.0.0_offline.iso镜像文件

双击Install.exe安装软件

NI TestStand 2019中文版

2,软件安装完成后,运行NI License Activator 1.2.exe

激活软件许可证即可

3,安装破解完成

NI TestStand 2019中文版

软件特色

一、开发测试与验证系统

执行测试序列,自动执行使用任何编程语言编写的代码模块,将测试结果记录到报告或数据库中,并连接企业系统。

1、自定义测试序列,以满足各种测试需求

借助TestStand的内置适配器,您可以调用以任何编程语言编写的代码,扩展测试序列的功能,满足各种测试需求。 您还可以将代码模块执行的过程自动化,以连接DUT和测试设备。

2、自动保存和报告测试数据

使用TestStand的内置自动报告生成功能,创建各种符合业界标准格式的文件(如 ATML、XML、TML与纯文本文档),以便存储和共享测试数据。 您可以将这些测试结果记录到企业数据库,不仅便于将来进行分析,还可简化数据共享。

3、通过并行测试提高测试吞吐量

使用TestStand的原生工具,简化设备并行测试配置,进而缩短测试时间。 您还可以自定设计能够一次性测试多台设备或能够在同一设备上运行多个测试的系统,从而提高测试吞吐量。

二、开发和部署测试系统

将测试序列、代码模块和相关文件部署到生产计算机上。 借助TestStand中的调试工具,分析故障并修复任何漏洞,减少已部署系统的停机时间。

1、高效复制和部署测试系统

使用TestStand Deployment Utility快速复制和分发整个测试软件应用程序。 您可以在TestStand中使用此原生工具来自动化软件分发的过程,以将代码模块、测试序列和相关文件安装到生产系统中。

2、使用集成调试工具,分析测试系统故障

使用TestStand的内置工具来调试序列,同时开发测试系统,以在部署之前及时发现错误。 调试工具可通过逐步执行测试序列和直接调试测试代码来帮助您检查系统行为,减少系统停机时间。

3、自行设计用户界面,满足各种测试需求

TestStand提供了简单易用的操作界面,方便您在部署的系统上配置和执行测试。 您还可以在多个编程环境中开发自己的用户界面,以自定义操作员与测试系统的交互方式。

软件功能

1、快速删除对话框

在以前版本的TestStand中,只能使用鼠标单击将对象插入TestStand序列编辑器。

TestStand 2019引入了“快速放置”对话框,这是一种直接从对话框插入步骤,序列和变量的简单方法,无需单击鼠标。

2、在序列文件中将序列分析器消息标记为忽略

序列分析器提供了在序列文件中将分析消息标记为忽略的功能。 在序列文件中将分析消息标记为忽略将消息存储在序列文件中,以便序列分析器不报告消息以便随后分析序列文件。 当您将消息标记为忽略时,序列分析器现在会提示输入用作忽略该消息的理由的文本。 序列分析器将对齐文本与分析消息一起存储,并在显示忽略的消息时将其显示在“分析结果”窗格中。

3、estStand部署实用程序更新

TestStand Deployment Utility添加了以下功能:

支持在32位TestStand部署实用程序中构建程序包和脱机程序包安装程序。

使用格式X.X.X.X的软件包分发中的部署版本号和软件包版本号的第四个字段。每次成功构建后,您都可以自动递增包版本的第四个字段,从而允许您在不更改包版本的major.minor.patch字段的情况下重建包。对于基于MSI的安装程序,第四个字段不存在以保持与以前版本的TestStand的兼容性,并且版本继续使用格式X.X.X.

“包依赖关系”对话框中的筛选选项,允许您配置依赖包的关系。这些选项允许您按可见性级别,包类型或特定搜索文本进行筛选。

支持部署使用Python适配器的步骤。部署实用程序包括任何包含的Python文件。 TSDU还提供有关需要哪些版本的Python解释器以及部署中的步骤使用的虚拟环境的信息。

一个选项,用于配置是否为LabVIEW和LabVIEW NXG部署了步骤类型的代码模块。启用后,TSDU在您创建的自定义步骤类型的子步骤中包含代码模块。

支持部署LabVIEW的覆盖模块设置中指定的文件步骤。

4、多核缩放改进

TestStand 2019包括对多核处理器的广泛优化。这些改进可以显着提高具有高核心数的系统的吞吐量,这些系统在多个UUT上并行运行短时间测试。性能改进在很大程度上取决于系统的规格。

5、PDF报告生成

TestStand 2019引入了一个生成PDF报告的选项,该报告看起来与通过结果处理器生成的报告相同。 PDF报告适用于除文本之外的所有格式。 即使启用了OTF,也只会在执行结束时生成PDF报告(不会为中间报告生成PDF报告)。

导航到“配置”»“结果处理”,单击“选项”列中的图标以启动“报告选项”对话框,然后选择“生成PDF报告”。

6、数据流增强功能

TestStand 2019增加了对数据流功能的改进支持。

流循环步骤类型 - 定义为InputRecordStream中的每个元素执行的步骤块。 (可选)您可以指定OutputRecordStream以在每次迭代结束时写入记录。

CSV记录原型 - CSV记录流现在支持字段名称和数据类型的规范。 使用记录原型自动将CSV文件中的列映射到字段中的记录。

7、参数扫描

TestStand 2019增加了Sweep Loop步骤类型以支持Parametric Sweep应用程序。使用“扫描循环”步骤类型定义一组扫描参数和一组步骤,以便为参数扫描的每组值执行这些步骤。您可以使用多种策略之一指定每个扫描参数的范围。默认策略是“开始/停止/步骤”。其他策略包括将扫描参数定义为常量值或使用数组指定范围中的每个值。 (可选)您可以指定OutputRecordStream在每次迭代结束时写入扫描参数(包括输出)。

8、在打包的项目库和VI之间切换

LabVIEW适配器现在允许您在打包的项目库和源VI之间切换,而无需重新配置步骤。这使您可以更轻松地调试打包的项目库。在以前版本的TestStand中,您必须重新配置步骤以指向源VI,以便调试从TestStand步骤调用的打包项目库中存在的问题。现在,您可以在同一步骤中指定打包的项目库源,从而实现无缝调试。此外,您可以从TestStand重建打包的项目库,而无需切换到LabVIEW。要使用此功能,请从“LabVIEW步骤设置”面板导航到“覆盖模块设置”窗口,以指定打包项目库的源文件(项目,VI,构建规范)。此窗口还提供每步覆盖选项,允许您在源VI或打包项目库之间进行选择。

在“LabVIEW适配器配置”对话框中,您可以覆盖所有LabVIEW代码模块的模块设置,以运行源VI或打包项目库。您还可以选择自动构建打包项目库的选项。在LabVIEW Adapter Configuration对话框的Advanced选项卡上查看这些选项。

9、LabWindows / CVI集成改进

TestStand 2019包含对TestStand的LabWindows / CVI适配器的一些改进,使编程和调试体验更容易。使用这些功能有三个要求:

10、安装LabWindows / CVI 2019。

在LabWindows / CVI 2019 ADE中,在目标设置»类型信息下启用将NI类型信息资源添加到DLL。

使用LabWindows / CVI适配器重建TestStand步骤调用的DLL。

11、改进C结构的处理

较旧版本的TestStand要求用户手动创建表示C结构的对象。此过程很复杂,容易出错,并且每次结构更改时都需要用户手动更新其TestStand对象。

LabWindows / CVI 2019将有关结构的信息嵌入到LabWindows / CVI DLL中,TestStand 2019可以读取它。 TestStand LabWindows / CVI适配器现在有一个Create / Update Data Type按钮,可以自动生成一个TestStand自定义类型定义来表示C结构。如果结构在LabWindows / CVI代码模块中发生更改,则用户只需单击按钮即可更新TestStand类型。

12、改进了对枚举的处理

较旧版本的TestStand要求用户手动创建枚举以匹配C中使用的枚举。枚举信息现在嵌入到LabWindows / CVI DLL中,因此用户可以自动导入和更新其TestStand枚举。选择具有未知枚举的函数时,将显示“创建/更新数据类型”选项。

13、源代码导航

较旧版本的TestStand要求用户在第一次尝试进入LabWindows / CVI代码模块时找到.c文件和LabWindows / CVI项目。 LabWindows / CVI 2019将.c和项目文件的位置嵌入到LabWindows / CVI DLL中。当TestStand加载DLL时,它会自动将此信息填充到“指定模块”面板中。

14、指针与数组歧义

在C中,指针和一维数组参数在函数签名中具有相同的数据类型。即使使用方括号指定数组参数,它仍然作为指针传递。由于C对两种语法的处理方式相同,因此早期版本的TestStand要求用户在每次使用它们调用LabWindows / CVI模块时手动选择参数是数组还是指针。

TestStand 2019使用方括号语法自动检测参数是否声明为数组,并自动将参数定义为适配器中的数组。如果参数包含数组大小,Test Stand将自动将其用作数组大小。

此外,用户可以使用/// OUT语法将参数指定为指针。这将允许用户避免提示。有关更多信息,请参阅以下教程:使用源代码标记来增强LabWindows™/ CVI™代码文档。

15、Python适配器

Python适配器提供了从TestStand调用Python代码模块的高级功能。您可以使用Python Adapter完成以下任务:

通过以下方式在磁盘上执行Python脚本(.py):

调用模块中定义的函数。

获取/设置模块中定义的属性。

创建一个类实例。

调用类中定义的成员函数或静态函数。

获取/设置类中定义的成员属性或静态属性。

在Python 2.7或3.6+版本中执行Python脚本。

在CPython解释器中执行进程外的Python脚本。

在Python和TestStand变量之间转换数据。

在TestStand变量(Object Reference)中存储/重用Python对象。

您还可以使用多个Python解释器会话来执行以下任务:

并行执行Python脚本。

在TestStand中同时使用多个Python版本,例如2.7和3.6。

为步骤指定模块时,TestStand序列编辑器将显示“Python模块”选项卡。 TestStand用户界面启动“编辑Python调用”对话框。

使用Python适配器配置对话框配置要与Python适配器一起使用的Python版本和Python虚拟环境路径。

在TestStand中使用Python Adapter之前,必须安装所需版本的CPython解释器。有关更多信息,请访问www.python.org。

注意注意在安装CPython解释器期间,必须启用用于将Python路径添加到环境变量的选项。

16、IO配置步骤类型

TestStand 2019增加了IO配置步骤类型来控制NI模块化仪器? 使用InstrumentStudio的NI-SCOPE,NI-DCPower,NI-DMM和NI-FGEN。 您可以初始化IO会话,将IO配置应用于现有IO会话,并关闭NI Modular Instruments的现有IO会话。 您还可以使用“扫描循环”步骤类型来扫描IO会话指定的仪器属性。

注意注意要使用IO配置步骤类型,必须下载并安装InstrumentStudio和iPXI驱动程序软件。

使用说明

TestStand代码模块开发最佳实践

使用TestStand创建测试程序时,核心测试功能在单独的代码模块中实现。TestStand提供调用使用各种编程环境和语言(如LabVIEW,LabVIEW NXG,LabWindows™/ CVI™,C#,VB .NET,C / C ++和ActiveX)开发的代码模块的适配器。

1、确定代码模块开发策略

在开始开发测试系统之前,请考虑为测试系统的以下方面定义一般方法:

代码模块的粒度 - 定义每个模块的功能范围。

定义测试代码的目录结构 - 定义良好的目录结构使得与其他开发人员共享代码以及将代码部署到测试系统变得更加容易。

·代码模块的粒度

在设计测试系统时,为代码模块定义一致的粒度级别非常重要。粒度是指测试系统中每个代码模块的功能范围。具有低粒度的测试序列调用几个代码模块,每个代码模块执行更多功能,而具有高粒度的序列调用许多代码模块,每个代码模块具有更小的范围。

低粒度:

更容易维护更少的代码模块

由于代码模块调用较少,性能得到改善

高粒度:

提高了序列文件的可读性,尽管过于细化的序列会引入混乱

更容易隔离代码模块中的问题和错误

你应该在这些极端之间取得平衡,因为每个极端都有自己的优势。

NI TestStand 2019中文版

使用不同级别的粒度实现简单测试

要在整个测试系统中保持一致的粒度,请为代码模块开发创建一组标准,例如:

在单独的代码模块中执行硬件初始化和关闭,以允许TestStand管理硬件会话的生命周期。

通过为每个需求项创建单个测试步骤,根据测试要求确定粒度。这种方法可以更容易地确保涵盖所有要求。此外,您可以将NI Requirements Gateway与TestStand一起使用,以在测试步骤和需求文档之间建立链接。有关更多信息,请参阅使用TestStand耦合NI需求网关教程。

使用所需的测试结果结构来帮助确定各个步骤的范围。由于每个步骤都创建了一个结果条目,因此创建测试步骤与所需结果条目的一对一映射将使组织测试结果变得更加容易,只需对报告或数据库日志记录进行最少的更改。

·定义序列文件和代码模块的目录结构

在测试步骤中指定代码模块的路径时,可以选择使用绝对路径或相对路径。建议避免使用绝对路径,原因如下:

如果将序列文件及其依赖项移动到磁盘上,则该路径将不再有效。

如果将序列文件部署到目标计算机,则路径将无效,除非文件安装在同一位置。

指定相对路径时,TestStand使用搜索目录列表来解析路径。这些搜索目录通常包含当前序列文件目录,TestStand特定目录和系统目录。

在开始开发之前,为测试序列和代码模块定义文件结构非常重要。使用以下准则定义用于存储序列文件和代码模块的策略。

对于在单个序列文件中使用的代码模块,将代码模块文件保存在相对于序列文件的子目录中。这将确保序列文件始终能够在系统上移动或复制到另一个系统时找到代码模块。

对于在多个相关序列文件之间共享的代码模块,如果将相关序列文件保存在同一目录中,则可以使用与单个序列文件相同的方法。考虑创建一个工作空间以包含所有相关的序列文件和代码模块。

对于在多个不相关的序列文件之间共享的代码模块,请考虑创建包含所有共享代码模块的特定目录,并创建一个新的搜索目录以指向此位置。这将确保系统上的任何序列文件都可以使用此搜索目录的相对路径来查找文件。部署代码模块时,可以部署位于 Cfg SearchDirectories.cfg中的搜索目录配置文件。如果使用此方法,请不要在目录中移动代码模块文件,以避免破坏调用序列文件中指定的路径。

NI TestStand 2019中文版

定义一个目录结构,其中代码模块位于序列文件的子目录中

使用TestStand Deployment Utility部署测试代码时,可以选择序列文件和相关代码模块的特定目标。如果序列文件的目标目录与代码模块之间存在相对路径,则TestStand Deployment Utility会更新序列文件中的路径以指向更新的位置。在大多数情况下,最好将部署的目录结构与开发系统上的目录结构相匹配,以确保部署尽可能与开发计算机上的代码相似。

2、选择实施功能的位置

在为测试系统定义代码模块的范围时,定义一个策略,在代码模块和序列文件中实现哪些功能非常重要。以下部分可帮助您确定实现常用功能的最合适位置:

根据限制评估测试测量

定义刺激值

报告和记录测试结果和错误

循环操作

执行切换操作

执行计算和操作数据

·评估限制和测试结果

理想情况下,代码模块应包含与获取测试测量直接相关的功能,测试序列应处理原始测试结果。这种方法有以下好处:

测试限制在序列文件中更易于管理,因为您可以使用属性加载器等工具来管理单个集中位置中多个步骤的限制。

序列中定义的测试限制将自动包含在测试结果中,例如报告或数据库。

可以在不更改代码模块的情况下更新测试限制,并且由于仅修改测试序列,因此需要较少的验证。

为了更简单的测量,代码模块可以将原始测量值返回到序列以进行处理。例如,如果测试步骤测量被测单元(UUT)的特定引脚上的电压,则代码模块应返回测量值,而不是直接在代码模块中执行检查。您可以使用数字限制测试步骤处理此值以确定序列文件中的测试结果。

NI TestStand 2019中文版

评估测试步骤中的限制可简化代码模块并改进结果日志记录

但是,由于某些测试的复杂性,并不总是可以在序列文件中处理原始测试结果。对于更复杂的测量,可能需要对结果数据进行额外处理。可以将复杂数据处理为单个字符串或数字结果,然后可以使用字符串或数字比较在TestStand中对其进行评估。例如,频率扫描测试的结果很复杂,无法直接评估,但数据可以处理为表示最小值的单个数字。在这种情况下,代码模块应评估处理结果并将频率数据返回到单独的参数中进行记录,如下面的移动设备测试示例所示:

NI TestStand 2019中文版

对于更复杂的数据,处理代码模块中的数据以生成数字或字符串结果,并使用参数传递原始数据以进行日志记录

如果原始数据非常大,则将数据传递给TestStand可能会对性能产生重大影响。在这种情况下,请考虑将数据直接记录到TDMS文件,并从测试报告链接到该文件。这允许您从报告中引用数据,而无需将其传递给TestStand。有关此方法的详细信息,请参阅报告中的“包含超链接 - TDMS文件 ”。

如果步骤无法使用测试步骤中可用的评估类型确定测试结果,请考虑创建具有附加功能的新步骤类型以处理所需的测试类型。有关创建自定义步骤类型的详细信息,请参阅本系列中的“ 自定义步骤类型开发的最佳实践”一文。

·定义测试刺激

对于许多测试,在执行测试之前,UUT或测试环境必须处于某种状态。例如,可能需要激励电压来进行温度测量,或者必须将加热室设定为指定温度。对于这些类型的模块,使用参数传递输入值,例如激励电压或所需温度。这提供了许多相同的好处,如在测试代码模块中返回原始数据与直接在代码中处理限制,如上一节所述。

·记录测试结果

TestStand使用测试步骤的结果为报告生成和数据库日志记录提供内置功能。因此,请避免在代码模块中直接实现任何类型的数据记录。相反,请确保将要记录的任何数据作为参数传递,并使用TestStand记录数据。将自动记录某些数据,例如测试结果,限制和错误信息。要记录其他数据,可以使用其他结果功能指定要包含在报告中的其他参数。

有关将结果添加到测试报告的更多信息,请参阅TestStand附带的向报告示例添加自定义数据。

如果您对日志记录有特定要求,请考虑修改或创建结果处理插件。这将允许您使用内置的TestStand结果集合来收集结果,同时您可以确定如何处理和显示结果。有关其他信息,请参阅“ TestStand过程模型开发和自定义最佳实践”文档的“创建插件”部分

·循环操作

实现循环的最佳方法可能难以确定,因为每种方法都有其自身的优点和缺点。使用以下准则来帮助确定哪种策略最适合您的应用:

在代码模块内部循环

提高性能,尤其是在快速循环时。由于每个代码模块调用都会引入几毫秒的开销,因此使用外部循环循环数百或数千次迭代会影响测试速度。

允许更复杂的循环行为。

在Sequence文件中外部循环

直接在序列文件中查看和修改循环设置,无需修改代码模块。

轻松访问序列文件中的循环索引。这对于确定切换路由或基于当前迭代而更改的其他行为很有用。

循环的每次迭代都单独记录,显示报告或数据库中每次迭代的结果。

·执行切换操作

许多测试系统利用切换来允许单个硬件测试多个站点。开关允许您以编程方式控制被测单元(UUT)的哪些引脚通过预定义路由连接到特定硬件。

您可以通过以下方式在TestStand代码模块中实现切换:

使用步骤的内置开关属性(需要NI Switch Executive)

使用TestStand IVI Switch步骤(仅限32位TestStand)

调用开关驱动程序功能直接编码模块

使用NI Switch硬件时,可以使用NI Switch Executive快速定义路径。如果您可以访问NI Switch Executive,则使用内置步骤设置进行切换通常是最佳方法,并具有以下优点:

在步骤中定义开关配置将开关功能与测试代码分离,这可以提高可重用性并降低代码模块的复杂性。

切换设置中的许多字段由表达式指定,允许您使用RunState.LoopIndex属性或其他变量来索引迭代步骤的路径或路径组名称。

对于并行测试,您可以使用测试套接字索引(RunState.TestSockets.MyIndex)作为路由字符串的一部分,以便为每个测试套接字使用不同的交换机路由。

您可以将连接生存期与步骤,序列,线程或执行联系起来

NI TestStand 2019中文版

用NI Switch Executive直接从TestStand步骤设置指定路径,包括支持TestStand表达式,以使用当前循环索引或其他属性动态确定路径

·执行计算和操作数据

为了避免维护代码模块以执行更简单的任务,可以使用TestStand中的表达式语言来执行基本计算和单维数组操作。应该在代码模块中实现更高级的编程要求,因为编程语言提供了更强大的功能,更适合这些任务。例如,使用本机LabVIEW构建数组函数比使用表达式语言更容易实现连接多维数组。

在某些情况下,您可以使用.NET框架提供的本机类来避免创建过于复杂的表达式。例如,您可以使用System.IO.Path类快速执行路径操作,而无需创建代码模块。

NI TestStand 2019中文版

您可以使用.NET步骤来使用.NET框架方法,而无需代码模块

3、代码模块实施的最佳实践

在实现代码模块时,有许多设计决策会影响您创建的许多代码模块。本节提供以下概念的指南:

·将数据从TestStand传递到代码模块

处理代码模块中的序列终止

向TestStand报告代码模块错误

管理代码模块执行速度和内存使用情况

将数据从TestStand传递到代码模块

您可以使用两种方法在代码模块中访问TestStand数据:

通过代码模块参数传递数据

使用TestStand API直接在代码模块中访问数据

在大多数情况下,最好使用参数传递数据而不是TestStand API直接访问它们,原因如下:

不易出错 - 由于参数值是在TestStand的步骤类型设置中定义的,而不是直接在代码模块中定义,因此很容易找到属性名称或数据类型中的任何错误。

更易于维护 - 在TestStand的参数配置中指定对步骤属性的更改,而不对代码模块进行任何修改。

更容易在TestStand之外重用 - 由于代码模块不依赖于TestStand API,因此该模块可以在TestStand之外使用而无需修改

NI TestStand 2019中文版

如果可能,使用参数将所需数据传递给代码模块

但是,在代码模块根据步骤的状态动态访问各种数据的情况下,使用API直接访问属性非常有用。在这种情况下使用步骤参数可以得到一长串参数,其中只有一些参数在各种条件下实际使用。

如果在代码模块中使用TestStand API,则将对SequenceContext对象(ThisContext)的引用作为参数传递。SequenceContext对象提供对所有其他TestStand对象的访问,包括TestStand引擎和当前的Runstate。如果使用终止监视器或模态对话框VI,则还需要序列上下文引用。

NI TestStand 2019中文版

使用SequenceContext访问代码模块中的TestStand API,可用于以编程方式访问数据

如果要重用TestStand之外的代码模块,请记住,只有从TestStand序列调用模块时才能使用任何使用TestStand API的操作。模块通过API从TestStand获取的任何数据都将不可用。您可以通过首先检查序列上下文引用是否为空来定义在TestStand之外调用代码模块的情况下获取测试数据的备用机制。在LabVIEW中,您可以使用Not A Number / Path / Refnum?function,返回一个布尔值,如图3所示。

NI TestStand 2019中文版

使用不是数字/路径/ Refnum?检查在TestStand之外使用的代码模块的SequenceContext对象参考的有效性

·处理代码模块中的大型数据集

在许多情况下,代码模块可以通过测量或分析生成大量复杂数据。避免在TestStand变量中存储此类数据,因为TestStand在存储时会创建数据副本。这些副本可以降低运行时性能和/或导致内存不足错误。使用以下方法管理大型数据集而不创建不必要的副本:

对代码模块内的大型数据集进行操作,例如分析获取的相同代码模块中的数据,并仅将所需结果返回给TestStand

在TestStand和代码模块之间传递数据指针。对于LabVIEW代码模块,请使用数据值参考(DVR)

·处理代码模块中的序列终止

当用户按下Terminate按钮时,TestStand将停止执行序列并运行任何清理步骤。但是,如果执行调用了代码模块,则模块必须完成执行并在序列终止之前将控制权返回给TestStand。如果代码模块的运行时间超过几秒,或者当模块等待条件发生时(例如用户输入),则可以向用户显示忽略terminate命令。

要解决此问题,您可以使用终止监视器来允许代码模块检查并响应调用执行的终止状态。例如,计算机主板测试装运示例在模拟对话框中使用终止监视器,如下所示。如果测试序列终止,则检查终止状态VI返回false,并且循环停止。

NI TestStand 2019中文版

·处理错误

测试系统中的错误是意外的运行时行为,阻止执行测试。当代码模块生成错误时,将该信息传递回测试序列以确定接下来要执行的操作,例如终止执行,重复上一次测试或提示测试操作员。

要向TestStand提供代码模块中的任何错误信息,请使用该步骤的Result.Error容器,如下所示。TestStand会在每个步骤后自动检查此属性,以确定是否发生了错误。您不需要将错误信息从TestStand传递到代码模块中。如果代码模块向TestStand返回错误,则执行可以分支到测试序列的另一部分,例如清除步骤组。

您可以使用“ 站点选项”的“执行”选项卡中的“运行时错误”设置来确定TestStand如何响应步骤错误。通常,在开发序列时应使用“显示对话框”选项以帮助调试,因为此选项允许您中断执行并检查序列的当前状态。对于已部署的系统,请考虑使用“运行清理”或“忽略”选项,而不是要求测试操作员输入。错误信息会自动记录到测试结果中,可用于查找错误原因。

NI TestStand 2019中文版

错误信息传递给Step.Result.Error容器,以便在发生步骤错误时通知TestStand

·管理代码模块的性能和内存使用

默认情况下,当您在文件中执行序列并将文档加载到关闭序列文件之前,TestStand会将序列文件中的所有代码模块加载到内存中。使用这些设置,在加载模块时启动序列时可能会发生初始延迟。但是,由于模块保留在内存中,后续执行序列文件的速度更快。

您可以在步骤设置窗格的“运行选项”选项卡中配置何时加载和卸载代码模块。通常,默认加载选项提供最佳性能,但在某些情况下,只有在与“ 动态加载”选项一起使用时才能加载代码模块。对于在典型执行中未调用的代码模块,例如仅在特定测试失败后运行的诊断,应该动态加载,因为在大多数情况下,根本不需要加载这些模块。

当您动态加载代码模块时,请注意TestStand在加载代码模块之前不报告代码模块的问题,这可能是漫长执行的结束。但是,您可以使用序列分析器在执行前验证序列中是否存在错误。分析器将检查静态和动态加载的代码模块。

对于内存密集型代码模块,您可以修改默认卸载选项以减少总内存使用量。例如,将模块设置为“ 步骤执行后卸载”或“ 执行顺序执行后卸载”。但是,此更改将增加执行时间,因为TestStand将需要为每个后续调用重新加载模块。在可能的情况下,更好的选择是使用64位版本的TestStand和具有更多物理内存的系统,以获得最快的测试性能,尽管内存使用要求很高。

如果您的代码模块维护共享数据(例如静态变量或LabVIEW功能全局变量),则修改卸载选项可能会导致行为更改,因为卸载模块时全局数据会丢失。更改卸载选项时,请确保将所有必需的数据传递到TestStand序列或存储在更永久的位置以防止数据丢失。

  • 下载地址

重要提示

提取码: hapx

点击报错软件无法下载或下载后无法使用,请点击报错,谢谢!