NI VeriStand Add-Ons Documents

cancel
Showing results for 
Search instead for 
Did you mean: 

NI VeriStand Add-on: VeriStand Steps for TestStand

IMPORTANT: This project has transitioned to GitHub. This page is deprecated and will no longer be updated.

 

Please visit the NI VeriStand Steps for TestStand GitHub page for project updates, documentation, support issue tracking, source code and built packages.

 

Overview

 

The Custom NI VeriStand steps for NI TestStand are designed to make it easier to set up common NI VeriStand actions in NI TestStand. The steps interface with NI VeriStand through NI VeriStand's API's, and include dialogs with increased functiality to simplify creating and running tests from TestStand.

 

Streamlined steps such as Initialize VeriStand and RT Sequence Numeric Limit Test let you create test sequences at a higher level than before.  Spend less time implementing your test sequence and more time validating your design.

 

menu.png

 

get channels.png

 

RT Sequence config.png

 

The following diagram represents best practices for  those using VeriStand as part of a Hardware In the Loop (HIL) solution:

best practices.png

 

TestStand is the main engine for test automation, with VeriStand being a key part in the cosimulation and execution of the test.  DIAdem is used to help analyze logs when necessary.  Then these test results and log files can be linked to design documents using tools such as IBM Rational Quality Manager for increased workflow integration.

 

Installation Notes

  1. Only one version of the VeriStand Steps for TestStand can be installed at a time.
  2. Each version of VeriStand and TestStand requires its own VeriStand Steps installer. Refer to the table below to be sure you are using the correct installer. The Service Pack versions of VeriStand require a separate installer. The Service Pack versions of TestStand do not require separate installers however. 
  3. Always remove any previous version using the Add/Remove feature of the Windows Control Panel before installing a new version.
  4. Upgrading to a new version may cause your TestStand sequence files to be updated automatically by TestStand the next time you open them. Although new versions of the VeriStand Steps should generally be backwards compatible, this may still cause breaking changes if local modifications have been made to the Step Types. Always back up your sequence files before updating to a new version of the VeriStand Steps for TestStand. 

Tutorial

See the attached document for a tutorial and example of how to use these steps.

 

Source Code

This add-on is provided as open-source code under the BSD 2-clause "Simplified" License.

VeriStand Steps for TestStand Github repository

 

Support

This add-on is provided as open-source software.  If it does not meet your exact specification, you are encouraged to modify the source code to meet your needs.

If you encounter a problem with this add-on: please post to the community forum for this add-on:

 VeriStand Steps for TestStand Community Forum

If you have a suggestion for improving this add-on: please open an #Enhancement issue on this project's Github page:

 VeriStand Steps for TestStand Github repository

You must use this feedback forum for support. Do not call National Instruments for support for this add-on. National Instruments does not support this code or guarantee its quality in any way. THIS EXAMPLE PROGRAM IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND AND SUBJECT TO CERTAIN RESTRICTIONS AS MORE SPECIFICALLY SET FORTH IN NI.COM'S TERMS OF USE (http://ni.com/legal/termsofuse/unitedstates/us/).

 

Required Software

  • NI VeriStand
    • 2013, 2013 SP1, 2014, 2015 (legacy Steps only)
    • 2015 SP1, 2016, or 2017 
  • NI TestStand (32- and 64-bit)
    • 2013 (32-bit legacy Steps only)
    • 2014, 2016, 2017

Version History

This package uses the following version convention based on Semantic Versioning 2.0.0.

 

MAJOR.MINOR.PATCH

 

This version will match the version on this page and in the installer filename and in the Windows Control Panel.

 

TestStand provides four version fields for Step Types. The version of the VeriStand Step Types will be displayed within TestStand as:

 

YEAR.MAJOR.MINOR.PATCH

Where YEAR is the year-version of VeriStand of the currently installed VeriStand Step Types

 

What's New

  • 7.2.1
    • Fixed bug which caused reference errors in some cases when TestStand is configured to use the LabVIEW Development environment as the LabVIEW adapter.
  • 7.2
    • Fixed bug preventing alarm states from being returned correctly by Get Alarm State Step
  • 7.1
    • TestStand 2017 Support
    • Single installer for TestStand 32- and 64-bit
    • Fixed bug preventing sequences containing the steps from executing when the sequence is called by the TestStand API from the LabVIEW Development Environment.
  • 7.0
    • Launching VeriStand silently now suppresses both the Workspace and UI Manager.
    • RT Sequence Steps and Stimulus Profile Steps now include an additional Timeout step property which causes the Step to Timeout. This is different from these Steps' existing Timeout_ms property which is the RT Sequence Timestep Timeout.
    • Stop VeriStand Step now includes an additional CloseApp step property which closes the VeriStand application.
  • 6.0
    • Installer is now a LabVIEW installer
    • TestStand 2016 x64 support
  • 5.0
    • Fixed bug preventing RT Sequence parameters of data type U32, U32 Array, U64, or U64 Array from being passed to RT Sequence correctly. 
  • 4.0
    • Fixed bug in Start VeriStand step type which caused the step's InstallationPath property to default to the wrong version of VeriStand. This change only affects the VeriStand.exe installation path in newly created instances of the step type.
    • Fixed bug which prevented the Channel Value Limit Test step type from returning Units value to the step results.  
    • Fixed bug which caused TestStand 2016 to crash when configuring the Channel Value Limit Test. 
  • 3.0 
    • Added the ability to specify the Target for running RT Sequences, and also the ability to specify a Timeout.  Fixed an issue where Double datatyped parameters were truncated to integers.  This update applies only to the steps for VeriStand 2015 and up, and only affects the following TestStand steps: RT Sequence Action, RT Sequence Numeric Limit Test, and RT Sequence Pass Fail Test.

Known Issues

  1. When using legacy or low-level step types, some steps require you to create certain local variables.  If the variables are not created, those steps will throw errors.  These steps could have been made to auto create these variables, but since they are kept for legacy compatibility, there is limited value.  Feel free to add or change substeps, since the code is largely open source.
  2. When using these steps, the sequence analyzer returns errors for the paths that the configuration dialogs return.  This is expected, since the sequence analyzer has a known issue with certain path types.  The workaround now is to diable the sequence analyzer.
  3. Sometimes when TestStand is closed, it will pop up a dialog showing some leaked references that need to be closed.  This dialog can be safely closed without issue.
  4. RT Sequence Action, Pass/Fail, and Numeric Limit steps erroneously truncate Double datatypes to their Integer component.  This was fixed in versions 2015.0.3.0 and later of these steps.

 Downloads

  • To install, download and run the attached installer for the correct version:

Latest version

  Version 7.2.1    
TestStand 2014 VeriStand 2015 SP1 VeriStand 2016 VeriStand 2017
TestStand 2016 VeriStand 2015 SP1 VeriStand 2016 VeriStand 2017
TestStand 2017 VeriStand 2015 SP1 VeriStand 2016 VeriStand 2017

Legacy versions

  VeriStand 2014 VeriStand 2015 VeriStand 2015 SP1 VeriStand 2016 VeriStand 2017
TestStand 2014 (32-bit) 14.0.3.0 15.0.3.0 15.1.3.0
15.1.5.0
15.1.6.0
16.0.4.0
16.0.6.0
17.0.5.0
17.0.6.0
TestStand 2016 (32-bit)     15.1.5.0
15.1.6.0
16.0.4.0
16.0.5.0
16.0.6.0
17.0.5.0
17.0.6.0
TestStand 2016 (64-bit)     15.1.6.0 16.0.6.0 17.0.6.0
Andrew H.
Systems Engineer
Endigit
Comments
peterlakey
Member
Member
on

Hi I'm having a puzzling and disturbing issue with the Set Parameter Value custom step type.

I'm running a test sequence where I need to dynamically set a model parameter to a specific value.  The step type works flawlessly on my company laptop computer.  The same step called on my lab computer (where I need it to work the most) fails every time with the error:

Error executing substep 'Set Model Parameter'.  Attempting to call instance member 'SetSingleParameterValue' on an Object Reference set to Nothing.  Error Code: -17300; Value invalid or out of range.

I'm running identical versions of VeriStand (2013.1.0.27), TestStand (2013 f1 5.1.0.40) and VeriStand Custom TestStand Steps (2.2.5) from 2013 SP1.

The only difference between the system running on the laptop and lab computer is that VeriStand is deployed locally on the laptop and is deployed to a PXI Chassis on the lab computer.

Any assistance would be greatly appreciated because I'm at a loss for what to do next. Images are below.

Error Message

TestStand Bug Image2.png

Error Message

TestStand Bug Image 1.png

Successful Case on Laptop

TestStand Bug Image 3.png

HandyAndy
Member
Member
on

For future issues, the feedback forum can be found here:

https://decibel.ni.com/content/thread/25202?start=120&tstart=0

Also, this issue was solved on this post:

https://decibel.ni.com/content/message/125678#125678

Thanks

Andrew H.
Systems Engineer
Endigit
HandyAndy
Member
Member
on

Update:

Rebuild TS 2014 VS 2014 to use packed project libraries for internal LabVIEW code instead of LLBs.  This helps certain errors with large applications since it provides a separate namespace for the code.  Since it is a relatively labor-inensive process to rebuild this for each version, I won't do them all now.  We can rebuild any other versions as necessary - just post to the feedback forum:

https://decibel.ni.com/content/thread/25202?start=120&tstart=0

Thanks,

Andrew

Andrew H.
Systems Engineer
Endigit
Pangea
Member
Member
on

Hi HandyAndy,

Could you tell me if is there this addon for TestStand 2014 SP1 64bits?

Thank you very much,

HandyAndy
Member
Member
on

Pangea,

For the time being, there is no 64 bit version.  32 bits has been enough for even very large deployments and applications  If you can tell me more about your application, I can see what I can do if it does need 64-bit.

Thanks,

Andrew

Andrew H.
Systems Engineer
Endigit
Pangea
Member
Member
on

Hi Andrew,

sorry for the delay, we are using Labview 2015, TestStand 2014 SP1, VeriStand2015 integrated in PXI1078 for automotive applications. We are simulating a very complex system butTestStand is giving "Out of Memory" very frecuently. What can we do for working with 64bits?

Thank you,

Irene.

HandyAndy
Member
Member
on

Hi Pangea,

Even if we tried to use the 64-bit version of TestStand, it cannot call 32-bit code.  32-bit code can run in 64-bit operating systems (from emulation layers) and it runs seamlessly and well most of the time.  The trouble comes when 64-bit code tries to call 32-bit code (or vice versa), as it is not possible to do directly.  VeriStand today is built on 32-bit DLLs.  In the future it may support 64-bit, but for now it does not.

As far as your application, there are many ways to optimize the amount of memory that is used.  I have seen very large applications run in 32-bit.  Here is a start at some resources on TestStand and memory use:

In the future, the best place to post questions is on the feedback forum:

https://decibel.ni.com/content/thread/25202?start=120&tstart=0

Thanks,

Andrew

Andrew H.
Systems Engineer
Endigit
Languanxue
Member
Member
on

I am using Labview 2015, VeriStand 2015 and TestStand 2014 SP1. When I use "Start VS Logging", There is a error "The path '"C:\\****"' is not a valid path." I tried to change the path. But the error cannot be remove. Does anyone can help me?

li_personal
Member
Member
on

hi,

you can add a variable in Local.

such as: Local.LogFilePath, the value is F:\TestStand_Model\Caculate_Model\Simulink_Caculate_Model\Logs

then you can add Local.LogFilePath when config the Start VS Logging step.捕获qqq.PNG

li_personal
Member
Member
on

Hi HandyAndy,

i'm using the package, it's great.

But i have a problem during a project. When i call Start VS Logging more than once, there is error occured:

Error executing substep 'Post'.

Logging.lvlibp:Stop Logging.vi.ProxyCaller >> Logging.lvlibp:Stop Logging.vi >> Logging.lvlibp:NI_VS Data Logging API.lvlib:Stop Data Logging Session.vi

=========================

NI VeriStand:  TDMS Log File.lvclass:Open Log File.vi->TDMS Log File Specification.lvclass:Initialize Log File.vi->Triggered Log.lvclass:Stop Triggered Log.vi->Data Engine.lvlib:Stop Data Log Session.vi->Data Engine.lvlib:Data Engine.vi TDMS open

LabVIEW:  normal file I/O error。

=========================

NI-488:  I/O operation terminated。

is there any solution available?

HandyAndy
Member
Member
on

li_personal,

Are you trying to call the Start Logging step multiple times to run multiple logs concurrently?  Multiple logs are not yet supported, and that would be the cause of the error in that case. 

This is what I suspect is happening:  Both Start Logging steps are running. The second one is actually giving you a warning in your report that you haven't seen.  It gives a warning and restarts the log, since only 1 runs at a time.  The first Stop logging step stops that log.  Then when run again, the Stop Logging fails and returns an error because it has already closed the open logging handle.

We are aware of the need to add support for multiple logs in these steps.  If you need it, you can call the VeriStand API since the API allows multiple logs.

Thanks,

Andrew

Andrew H.
Systems Engineer
Endigit
swbpnole
Member
Member
on

Hello,

I am getting the following error when using this in TestStand 2014:

Error executing substep 'Open and Deploy RT Sequence Action'. Constructor Node System.NullReferenceException: Object reference not set to an instance of an object. System.NullReferenceException in RTSequenceVIs.lvlibp:NI_VS Sequence Execution Interface.lvlib:Create Sequence Call.vi->RTSequenceVIs.lvlibp:Open and Deploy RT Sequence blocking call.vi->RTSequenceVIs.lvlibp:Open and Deploy RT Sequence blocking call.vi.ProxyCaller LabVIEW:  A .NET exception occurred in an external assembly. For information about correcting this error, copy the following exception (in bold), and search the Microsoft Developer Network (MSDN) Web site or the Web for a possible explanation.

What does this mean?

Have a simple Initialize VeriStand, RT Sequence, and Stop VeriStand sequence file in TestStand.

I am running:

Windows 7

TestStand 2014 SP1

VeriStand 2015

PXI 8135 w/ PharLap RT ETS

Ryan_S
Active Participant
Active Participant
on

It seems to be complaining about a null reference, so did you make sure you're calling an "Initialize VeriStand" step before calling the RT sequence step? Also, please post all further questions on the support & feedback forum.

gardowp
Member
Member
on

In TestStand I am running both direct Veristand steps using this add-on and a LabView applications that calls the same Veristand project.  The LabView application is run as it's own thread.  I activate the front panel of the VI, and the connection values from TestStand do not show up on the front panel.    At the end of the sequence I get this error from the LabView adapter : "NI VeriStand:  Cannot perform this request because NI VeriStand is not running a system definition file. Deploy a system definition file, and then try again.".  The Veristand steps work.  Is there a special secret sauce I need to execute both Veristand and LabView components from TestStannd?

HandyAndy
Member
Member
on

gardowp,

I have replied to your question on the support & feedback forum for these step types.

Andrew H.
Systems Engineer
Endigit
Venugopal
Member
Member
on

Teststand error.JPGHello,

 

I am getting the following error when using this in TestStand 2014 SP1:

 

Error executing substep 'GetChannelValue'.An error occurred while calling >NET member 'GetSingleChannelvalue':Object does not match target type .

 

Error code: -17500 operation failed

What does this mean?

 

Have a simple Initialize VeriStand, Get channel value limit test, and Stop VeriStand sequence file in TestStand.

 

I am running:

 

Windows 7

TestStand 2014 SP1

VeriStand 2015

 

ARLROB
Member
Member
on

Does anyone know what the "Open References" step is used for?

wjrt
Member
Member
on
NILESH_MHALIM
Member
Member
on
Background: I'm working on Project which is using RT Pharlap and Veristand. Simulink Models and NI Card Channels are part of Veristand System Definition. As a part of Project , Developed Test cases in Real Time sequences(using Stimulus profile Editor). Each Real Time sequence represent one Test Case.These test cases consist of Test Steps which are accessing(read-write) Model channels and NI hardware channels from Veristand system definition. These Real Time sequences(Test Cases) are called in TestStand using Veristand Step "RT Sequence Action".So there is one by one Execution of Real Time sequences(Test Cases). Problem Statement: After Completion of Test cases, TestStand generateTest Report(selected ATML in report setting). 1) Observed that TestStand unable to provide Test Case pass/Fail Status, its just say "Done". also unable to get status of each Test Step of Real time Sequence. 2) Unable to log data in Test Report related to Model channels , Hardware channels used in Test Steps during execution. 3) How to pass data of model channels, variables, parameters from Real Time Sequence(Test Case) to teststand, so i can log that data in Teststand test report
NILESH_MHALIM
Member
Member
on

Background:
I'm working on Project which is using RT Pharlap and Veristand.

 

Simulink Models and NI Card Channels are part of Veristand System Definition.

 

As a part of Project , Developed Test cases in Real Time sequences(using Stimulus profile Editor). Each Real Time sequence represent one Test Case.These test cases consist of Test Steps which are accessing(read-write) Model channels and NI hardware channels from Veristand system definition.

 

These Real Time sequences(Test Cases) are called in TestStand using Veristand Step "RT Sequence Action".So there is one by one Execution of Real Time sequences(Test Cases).

 

 

 

 

Problem Statement:
After Completion of Test cases, TestStand generateTest Report(selected ATML in report setting).
1) Observed that TestStand unable to provide Test Case pass/Fail Status, its just say "Done". also unable to get status of each Test Step of Real time Sequence.

 

2) Unable to log data in Test Report related to Model channels , Hardware channels used in Test Steps during execution.

 

3) How to pass data of model channels, variables, parameters from Real Time Sequence(Test Case) to teststand, so i can log that data in Teststand test report

Andy-C
NI Employee (retired)
on

Hi All,

 

This project has transitioned fully to GitHub. This comment section is no longer actively monitored. Please submit future questions and issues to the GitHub Issues page for the project:

 

https://github.com/NIVeriStandAdd-Ons/VeriStand-steps-for-TestStand/issues

 

Best regards,

 

Andy

Tony1983
Member
Member
on
Is there support for VeriStand 2018 or 2019? Because my matlab is 2017b.