From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

TestStand executable test sequence deployment

Solved!
Go to solution

Hello,

 

I wish to automate my test environment by using TS and LV.

 

My goal is to have a single machine with TS (inc. LV) development software for test construction which will be compiled into a single .exe file to run on the tested machine which doesn't have TS or LV.

Can I use the following software package for this task?

This is for the main development machine:

779601-35

NI Developer Suite, English, Include 3 Years SSP

1

779602-35

NI Developer Suite Automated Test Option, Include 3 Years SSP

1

 

This is for the machines to run the tests on:

777774-3505 NI TestStand Base Deployment Engine License 5 Unit Bundle 

 

I wish to have an option to monitor test execution on each machine and if necessary to perform debug operations on the tested machine.

 

If the package listed above will provide this capability then where can I find the documentation for creating the .exe files to run on the tested machines?

If no, then what software package will provide this capability?

 

Thank you,

 

Lev Kolomiets 

0 Kudos
Message 1 of 18
(6,737 Views)
Solution
Accepted by topic author LevKL

Lev,

 

Those are the correct packages for TS development and deployment.  The only thing is you have limited debug capabilities with the deployment license.  If you want to truly debug, then instead of the Deployment license they have a TestStand Debug license.

 

http://www.ni.com/teststand/deploy-compare/

 

More on licensing: http://digital.ni.com/public.nsf/allkb/B4B7C4ADB9B21B3F86256D360061891F

 

One thing you will need to realize is that TestStand does not create executables.  Because TS is essentially a scripting language, you deploy raw files.  These raw files get fed into the TestStand engine and execute steps sequentially.

 

TestStand ships with 10 different User Interfaces (fully customizable).  These are executables and run on top of the TestStand engine.  They allow you to execute your sequence files (essentially scripts).  You will only need to use 1 of them.  So the User Interface is technically the executable for a deployment machine.

 

More on deploying TestStand automations:

http://digital.ni.com/public.nsf/allkb/EE3382373D209449862570A5006572F0

Chapter 14 in the reference manual: http://www.ni.com/pdf/manuals/373435e.pdf

 

User interfaces is in Chapter 1 under major components section:

http://www.ni.com/pdf/manuals/373435e.pdf

 

Hope this helps.

 

 

jigg
CTA, CLA
testeract.com
~Will work for kudos and/or BBQ~
Message 2 of 18
(6,732 Views)

The information you provided was detailed and right on target.

Thank you very much !

 

Lev,

 

0 Kudos
Message 3 of 18
(6,728 Views)

Hi,jiggawax

I successfully deployed a TestStand system,but I got something confusing.

The sequence file is written in scripts,and the image of the deployed teststand system contains that sequence file.

My question is that,if user got his own TestStand Delelopement Suite,he's able to open that sequence file and see and edit the details in it.Is it possible to transform the sequence file into something that is not visible but only executable to users? (For instance,like c file can be turned into dll file)

0 Kudos
Message 4 of 18
(6,560 Views)

Delph,

 

I don't think it is possible to deploy a Sequence File that way.  Because TestStand is essentially a "scripting" language it needs the raw code to execute.

 

However, you could password protect the file so that people couldn't change it.  With the sequence file open go to Edit>>Sequence File Properties.  On the Advanced tab you can set up the password protection.  You can make it either not editable or not viewable.  If you are sending to a customer and you don't want to disclose any IP then make it not viewable.

 

Hope this helps,

jigg
CTA, CLA
testeract.com
~Will work for kudos and/or BBQ~
0 Kudos
Message 5 of 18
(6,550 Views)

Thx a lot ,that's quite helpful.

0 Kudos
Message 6 of 18
(6,539 Views)

~jiggawax~ a écrit :

 

I don't think it is possible to deploy a Sequence File that way.  Because TestStand is essentially a "scripting" language it needs the raw code to execute.


Hello, sorry to dig this topic up to the surface, but I'm wondering.

 

Labview is "essentially a programming" language yet you can compile it into one executable that doesn't need a run-time engine.

 

Why couldn't Teststand compile a sequence (and needed dependencies) into one executable that doesn't need a run-time engine ?

 

Plus the whole run-time matching the VI's version is a management mess left to the developpers while it could have been solved on NI side.

 

I just need a deployement tool to select the main sequence file, calculate the depencies, compile the VIs and pack everything into one executable.

 

Right now I have a 4 MB worth of sequence/VI files bundled with 728 MB worth of Teststand/Labview run-times/editors and stuffs.

 

Is that really the way it should work ? That doesn't look quite professionnal, considering the obligatory intrusively expensive licensing scheme.

 

Where is the buy/install-once, compile/deploy-many option ? It really looks like a non-ergonomic non-developer friendly software.

 

David Koch

0 Kudos
Message 7 of 18
(5,815 Views)

Hi David,

 

it seems you are interrested in this discussion.....

https://decibel.ni.com/content/thread/25338?tstart=0

 

 

Regards

Juergen

--Signature--
Sessions NI-Week 2017 2016
Feedback or kudos are welcome
Message 8 of 18
(5,806 Views)
I think you have some serious misunderstandings of both LabVIEW and TestStand. First, you have obviously never created a LabVIEW exe or dll if you think a runtime is not required. Second, you can certainly package the LabVIEW coffee into a single file, though I find using that is very inelegant. Third, having a separate operator interface, TestStand engine, sequence files, etc. is an enormous advantage when you have more than 1 sequence to deploy. I've done hundreds of sequences for hundreds of products and would not have been able to use and maintain that many different exes. I would have stuck with plain LabVIEW for such basic applications.

You might want to take a look at the advanced TestStand training to see how you can properly leverage all that TestStand can offer.
Message 9 of 18
(5,795 Views)

Hey Kochise,

 

I have heard some of the same gripes regarding TestStand.  Let me try and give my 2 cents for your questions:

 

Labview is "essentially a programming" language yet you can compile it into one executable that doesn't need a run-time engine. Not True.  Just like .NET requires the CLI, LabVIEW requires the LV-RTE that is somewhat large.

 

Why couldn't Teststand compile a sequence (and needed dependencies) into one executable that doesn't need a run-time engine ? TestStand is flexible enough to call many different languages as well as DLLs.  I don't think it would be possible to cram assemblies, VIs, dlls, etc.. into one exe.  In other words, cramming different, diverse, languages into the same executable is impossible. 

 

Plus the whole run-time matching the VI's version is a management mess left to the developpers while it could have been solved on NI side. Usually a quick mass-compile can fix this.  In the newer versions of TestStand you can make VIs run in their current version.  You do have to have all of the different RTEs for each version however.

 

I just need a deployement tool to select the main sequence file, calculate the depencies, compile the VIs and pack everything into one executable. This exists.  You can point the deployment utility to your folder containing the sequence file.  The TS Deployment Utilty will then collect all the dependencies for you.  Refer to my comments above regarding the exe.

 

Right now I have a 4 MB worth of sequence/VI files bundled with 728 MB worth of Teststand/Labview run-times/editors and stuffs. 4MB isn't that large.  Disk space is cheap today.  One thing we do to mitigate the larger disk space with the run times and UIs is to create a separate installer.  We call it a baseline. It contains all the engines, UIs, native codes, etc...  Then our automations are much smaller and can just be instlaled on the top of the baseline.  Usually they only install the baseline once and then when we fix the automation it will be small.  There is a white paper out there on this if you google around.

 

Is that really the way it should work ? That doesn't look quite professionnal, considering the obligatory intrusively expensive licensing scheme. $500 bones for a deployment license is really cheap in the manufacturing world.  Considering that the deployment license is a one time purchase that is upgradable for life is nice as well.  I did a study on the cost of creating your own test executive in LabVIEW vs all of the costs of TestStand.  The difference was astronomical.  I think it was around $800k vs $30k or something like this.  This includes development time at $100/hr.  Granted you need to take into consideration the project size and scope.  Sometimes a large framework is overkill as Dennis pointed out.

 

Where is the buy/install-once, compile/deploy-many option ? It really looks like a non-ergonomic non-developer friendly software.  Not even sure how to respond here.  Any language is non-developer friendly if you are ignorant to how it works and how to use it effectively.  Sometimes I think LabVIEW developers that are making the transition to TestStand get frustrated because of the learning curve.  LabVIEW has a low barrier to enter to do mediocre things.  To do great things in LabVIEW you need to really learn it.  With TestStand the low barrier to enter only allows you to do simple things.  To do mediocre and advanced things in TestStand requires that you really learn it.  So basically the learning curve with TestStand is a bit more steep once you go beyond the basics.

 

Like I said.  I've heard your same frustrations.  Just keep in mind that TestStand is a scripting language that can call about anything out there: ActiveX, Assemblies, DLLs, Raw Code, Java, Python, Etc...  In order to make it so flexible there is a cost in making a nice little neat package.  One thing that might help is knowing that if you are only using LabVIEW there is an option to put all your LabVIEW code in the packed project library.  So then you just have your Sequence file and packed project lib.  There are documents out there on how to do this in TestStand.

 

Anyhow, don't give up yet.  I've seen companies become really successful with TestStand when it is the right tool to use.  Sometimes it isn't always the right tool.  I know that NI is always willing to sit down and work with customers to help them become successful.

 

Hope this helps some,

jigg
CTA, CLA
testeract.com
~Will work for kudos and/or BBQ~
Message 10 of 18
(5,788 Views)