NI TestStand Idea Exchange

Community Browser
Top Authors
cancel
Showing results for 
Search instead for 
Did you mean: 
Post an idea

I know that I can write my own sequence analyzer tasks, but I think this one should be default out-of-the-box from NI:

 

Add a sequence analyzer warning task that checks for usage of obsolete methods / properties / events.  This way we can use sequence analyzer to help find them and make our code easier to upgrade with future versions of TS

 

Otherwise, trying to find all the obsolete "stuff" is REALLY REALLY annoying -- a lot of searching

 

obsoleteAnalysis.png

When you are running an execution and you want to check if a step will execute or not depending on the precondition you have to go to the step, browse to the precondition, copy it and paste it in the Watch View...

 

Wouldn't it be great if you could add your step precondition the the watch view with a single click (like VS "Add Watch")... ideally I'd have another entry in the menu below called "Debug" ot "Watch View" with submenu-items: "Add Precondition to Watch View", "Add Pre-expression to Watch View", "Add Pre-expression to Watch View"

 

ideaxchange.png

 

Vote for me!!!

 

<<- N --.>

TestStand File Diff and Merge Utility has the ability to produce reports in XML format with a slew of dependencies on TestStand (stylesheets, button images, etc.) making them not very portable.  Yes, I know they can be packaged with the extra utility, but that's a hassle too.  Now instead of managing a file I have to manage a folder of files.

 

Additionally, these reports only seem to work with Internet Explorer which I'm hearing is going away. Not sure if it's just me, but Edge's IE mode doesn't seem to work for these reports either.

 

Can NI do something to address this?

  • Make a browser extension that works with at least chromium based browsers.
  • Figure out a nice PDF format.

 

Ideally, I want to upload the file type into my code review platform of choice (git, perforce swarm, crucible, network folder share, etc.) and not require my reviewer to have TestStand installed on their machine.

It would be very handy to have a jump list of recent/pinned files for TestStand.  This could also include simple tasks like creating a new sequence file.

 

Current:

 

Current TS.png

 

Proposed:

 

Proposed TS.png

The Sequence File Documentation Tool allows you to create documentation in the file formats HTML and text.

 

It would be nice if it could also create XML based documentation similar to report generation. Selecting a style sheet will ensure that the XML file is presented in a certain way using a browser.

 

Norbert

This method ensures that the correct test sequence and its corresponding DLL/VI/custom files are run.

 

This feature needs to be optional as during development phase this feature is not desired.

 

Configuration :

User selects the test sequence.

User (optional) selects related files like dll/vi/etc

The checksum of the package is determined and tagged with the sequence.

 

Execution:

User enables the checksum option.

User selects the above sequence to run.

Teststand automatically checks for the sequence checksum and also the checksum of the related files.

 

The sequence will run only if the checksum matches.

The property loader step allows the source location to be defined via an expression.  However, if that expression does not evaluate to a file on disk at compile time you get an error.  This isn't always desired behavior, for instance, when used in a plugin architecture.

 

Expression.PNG

 

The current workaround is to include a dummy file which could unnecessarily complicate the software & deployments.  A dummy file also has the potential to mask errors that should be presented to the user. 

 

The only validation TestStand does of the property loader source location file is that it exists.  It doesn't do any validation on the file contents.  So is there any benefit?  TestStand properly throws an error if the expression doesn't evaluate to a valid file.

 

Alternatively, a developer could deselect the sequence analyzer rule "Property Loader source should be proper", but this would disable it for all analysis not just the ones that use expressions

 

Often customers unknowingly use debug DLL and this results in reduction of the test time.

Sequence analyzer tool should give a warning if it detects that the dll used is not a released one.

I haven't been able to figure out how to use the cmd prompt to query which TS version is active. Is this possible? if not, it would be nice to have.

Currently, the Installation Destination options are as follows: 

 

 

There is no way to install files to the root directory, or its subdirectories, with the exception of those already present in the Installation Destination. For instance, make it possible to install a file to the following directory: C:\ProgramData\IVI Foundation\IVI

 

For TestStand Sequence Analyzer, all the results information/reports include status, user, computer, file, time and results.  However there's nothing to link to what version of the sequence file you actually analyzed (it just has the path to the file analyzed).  It would be very helpful for compliance tracking if the results/reports also included the sequence file version. 

I can add my own test to log this as information, but it would probably be helpful to others if it was included as part of the results header information.

Although BuildTSD allows for builds from the command line, they are still not automatable because someone must be logged in for the run to work. All of our other build tools (Visual Studio, Eclipse, MPLAB, Quartus, NIOS, Matlab, etc.) allow for headless, remote, automated builds which support our move toward continuous integration, continuous deployment, and agile development.

It would be nice if TestStand provided basic file I/O functions (open, close, read, write) to complement the other functions already available.

The TestStand Deployment Utility lets you select the TestStand Application Data directory as an installation directory for files.  This is great because the installers know how to handle this path which differs between operations systems (such as Windows XP and Windows 7).  Unfortunately, there is no similar entry for the TestStand Application Data directory in the list of default TestStand search directories.  There really needs to be an equivalent TestStand Application Data directory entry there because it will need to be a search directory required by a deployment that installed files to that location.

 

Yes, you can add the absolute path to the Application Data directory to the TestStand search directories by hand, but the paths differ from operating system to operating system.  This means that if you want to create a deployment that runs on multiple operating systems, you have to manually add search directory entries corresponding to the Application Data directory for each operating system on which you are running, even if they are not used.  Then you have to include the modified TestExec.ini with your deployment.  If the TestStand default search directories contained an entry corresponding to the Application Data directory and interpreted that entry according to operating system (the same as the TestStand Public Directory entry), that would be fabulous.  That way, you could create a single deployment installer that worked on multiple operating systems instead of creating individual installers for different operating systems.

 

The  reason why I am making this suggestion is that I have files in my deployment that need to be written at run-time by my sequence files but the deployment needs to run on a Windows 7 computer without administrator privileges.  If you try to write files from an application running under Windows 7 without administrator privileges, you will get access denial errors unless the files are located in all but a few defined paths.  The TestStand Application Data and Public directories are examples of those paths.

 

Also, for the sake of consistency, if the TestStand Deployment Utility allows you to install files to the Application Data directory, the TestStand search directories should also provide support for the same location since search directories determine where to load dependencies.

TestStand File Diff and Merge Utility is not very useful for code reviews on its own.  It seems adequate for notifying the user that a sequence was added, however from the tool itself the user cannot actually review the newly added or removed sequence's contents.  Why is there no + on the item tree to go deeper.

 

Alternatively:

If I have to right-click a sequence and select "Go to location" then why bother with the separate tool to begin with?  Why isn't the diff utility integrated into TestStand's sequence editor itself?  Seems like a side-by-side comparison within Sequence Editor would allow a reviewer to poke and prod around all the hidden settings that are often missed using the existing utility.

 

Hello,

 

CSV Input Stream allow to parse CSV files to input data into a Stream Loop for instance. By default, the separator is a comma (,). I use a non english version of Excel to edit a CSV file, and every CSV format write a semi-colon as separator (;):

A;0;0;2
A;10;30000;5
A;20;15;7
B;75;42;1
B;100;12;0

 

Using an expression, I am able to dynamically (at run-time) change the property SeparatorChar:

Locals.MyInputStream.AsCsvFileInputRecordStream.SeparatorChar = ";"

 

I think it could be more convenient to have a direct access to this parameter in the configuration pane, allowing also to check the content of the file  before execution with Parse Record Prototype funtions.

 

Best regards,

TestStand's LabVIEW interface could benefit by being able to programmatically get and set LabVIEW Class Objects using the Get Property Value.vi and the Set Property Value.vi.

 

After much toil with this subject, I've finally come to the conclusion that I cannot get a LabVIEW Class Object from TestStand using LabVIEW. I've tried both the Get Property Value.vi and a combination of property and invoke nodes to no avail.

 

Capture.PNG

There are many reasons why TestStand is not my language of choice....  I will start with this one...  The TestStand Version Selector needs improvements.

 

If the users are to base the reliability on the interface, then the TVS needs to be much more reliable.  When switching from one version to another, the version selector hangs more often than being able to accompish its task.  The TVS just sits there pretending to do something...  well... it probably was doing something, decided it was lost and then decided to sit and watch the CPU clock cycles go by...

 

I usually kill the task and try again... By the 3rd attempt, it will somehow manage to switch versions.  These attempts give me enough time to write this idea.. After killing the application, I always get the "Unable to determine the current TestStand version" message.  This is usually a good sign as the next attempt will probably be a lucky one.

 

 

I decided to search the forum to see if others had issues with TVS, and of course, I was not alone.  Se the links below:

 

http://forums.ni.com/t5/NI-TestStand/Operation-failed-popup-when-using-TestStand-Version-Selector/m-p/2354516/highlight/true#M40275

Josh W is not a novice at TestStand...

 

http://forums.ni.com/t5/NI-TestStand/Problem-launching-TestStand-2012/m-p/2401666/highlight/true#M40716

 

http://forums.ni.com/t5/NI-TestStand/Microsoft-Visual-C-run-time-error/m-p/860288/highlight/true#M23219

Just how long is being patient?  I have waited more than an hour (during lunch) and it still does not swap versions...

 

I do realize that most issues are related to microsoft visual studio or visual C++, but TSV needs to tell us what is going on or why it is not able to switch version.  After all, once it finally changes versions, TestStand is fine.  No changes to the PC or any software installation.  So the issue clearly points to TVS.

 

When you improve the TestStand Version Selector, can you also improve the time it takes to change versions?  I realize it's too late to improve the architecture of the language where different version could co-habitate together, like LabVIEW, but at least make it a bit faster.. 

 

Now that it has selected the approrpiate version, I shall stop my rant... I mean idea and get back to work.

 

Hopefully all the people who share the same concern will kudo this idea.. 

 

🙂

Imagine the scenario where you have some custom types files and you want to validate those types are in good shape.  So you want to run the TestStand "Sequence" Analyzer utlity on them.

To do this, I need to create an arbitrary analyzer project, make sure it is configured to analyze the type palettes, and then run that analyzer project. 

 

If I were doing a 1-off sequence file, I can just open the sequence file and click the Start Analysis button (don't need to create an analyzer project if I just want to accept all the normal defaults).  However, if I open the types palette I can't select the types file I am interested in and just hit the Start Analysis button (it's disabled). 

 

I'd love to be able to have the "start Analysis" button enabled and work if I am in the types palette, and have it just analyze the types file I have selected.  Or analyze StationGlobals if I am in the station globals window.  Or users configuration if I am in the user manager.

I use the Stationglobals.ini to define my hardware settings on the test PC, like comport number and so on. It is running Teststand Base Deployment.

If I want to edit the settings it's only possible if I copy the stationglobals.ini to my development PC which has the full license, edits the settings, and then copies the file back to the test PC. Before I copy the file to my development PC I need to make a backup of the original file, so I don't get the settings on the development PC overwritten. Then afterwards I have to re-establish the backup.

 

This is a lot of copying back and forth, which is quite annoying.

 

Please make it possible to edit the Stationglobals.ini directly on the test PC with the Base Deployment Engine.