NI TestStand Idea Exchange

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

When I get called to look at an issue that has occurred with a test, the account logged into TestStand is typically a restricted user (i.e. Operator). Since the Operator account has very limited options, in order to really do much immediate troubleshooting I need to stop the test and re-run it in the Administrator account. At best this is inconvenient and inefficient if the spot the error occurred is late in the test. However, it is extremely frustrating when it's an intermittent run-time error and I can't do any real-time debug because Operator is logged in. The only real alternative I can think of (when the problem is intermittent) is to leave it logged in as Administrator so I can debug whenever it happens to occur. This is not really an acceptable practice in most cases.

 

It would be fantastic if there were an override that let's an Administrator provide the proper credentials to perform the desired task that would normally be off-limits to the Operator. The basic premise of this suggestion is similar to the functionality within Windows; if you try to connect to a secured location or perform a task that requires administrator privileges, a dialog box pops up asking you to enter authorized credentials.

 

I run into many situations where I wish this feature was present. The issue is not always within TestStand (could be a database connection issue, etc.), but it is TestStand that throws the error and in Operator mode the only option is "Run Cleanup". Significant time, effort, frustration, and efficiency could be saved if I could simply enter my credentials as an administrator to perform the tasks I need to do.

 

Regards

 

 

On an unrelated side note, I find it humorous that "TestStand" is considered a misspelled word when using the forum spell checker.  🙂

Custom TestStand UI suggestion.

 

I would like the same functionality as with Sequence Editor when double clicking on Sequence Call step (already configured) and it goes into the Subsequence directly and you can view the SubSequence.

 

I would like to see that functionality in the TestStand Custom UI when double clicking on the Sequence Call step with Sequence View Manager and it goes into the Subsequence so it can it viewed. 

 

This would come in handy when debugging a subsequence and setting break points in the subsequence and then viewing variables during execution.

Currently you can right click the insertion palette and change the position / menu items that are shown / hidden in the insertion palette from a context based dialog box. (can also be done from the same box in the type palettes view).

It would be useful to be able to modify this programatically.

Currently you can only programatically play with the typepalettefilelist from the engine property object and insert new ones or remove old ones.

If a sequence file is loaded that has a step type in it that is not currently loaded by a type palette file, then it shows up in the insertion palette (as it should do), but if the testexec.ini file says this should be set to "hide" then it is hidden.

 

Thoughts

Thanks
Sacha

It would be nice to have an option to resize an array and have the new elements contain the same properties/variables as the first element. The resize array dialog box has a checkbox for "Empty". How about one for "Auto populate from first index" or something?

 

I currently do a copy and paste into each new element, which is no fun.

 

resize array dialog box.jpg

Let's say I'm building a fairly long compound expression that has some repeated parameters - I would like a way to specify (without creating additional locals) a variable/macro for use just within that expression.

 

For example, instead of:

Locals.CommandLine = "cmd /c C:\some path\that\is\reused"
Locals.CommandLine += " /path C:\some path\that\is\reused"

 

 

I could specify:

#pathmacro "C:\some path\that\is\reused"
Locals.CommandLine = "cmd /c " + pathmacro
Locals.CommandLine += " /path " + pathmacro

 

 

The idea being that with this I only need to update the macros in one place in a long expression.

 

This is a simple example, but hopefully you can see why this would be useful and why I wouldn't want to create lots of locals when the values are required only within the expression.

If you have lot of code between an if, else, end statement steps (and other flow control structures for, foreach, while, and etc.), it would be nice to roll all that up so you can see more of the flow of the sequence.  This will also help to know what steps are in those structures in large sequences.  TestStand already has some code folding in the sequence, so this is an expansion of this.  Many text and code editors have this feature and it would be a great feature for TestStand.

 

 

Since our projects involve several developers working in tandem, we manage all project relevant data under SCM (Source Code Management). This way sharing and exchange of data between developers is much easier. To ensure that all developers can access and use the same TestStand Components – especially the language directory – the TestStand configuration directory is also under SCM control.

During the development process if a developer checks out the project folder, for example to „C:\ProjectX“, then the language folder is available under „C:\ProjectX\TestStand\Components\Language“.

 

TestStand ProjectX.jpg

 

In Teststand there is an option to point the configuration directory to a custom directory. To do this, go under the Station Options – Preferences – Configuration Directory,  and change the default path to our custom checkout path.

 

Station Options.png

 

However, even changing this setting, the language files are still get loaded from the default configuration path. In other words, assigning new custom path (which is „C:\ProjectX\TestStand\Components\Language“) seems to have no effect and the older default location (which is „C:\Users\Public\Documents\National Instruments\TestStand“) keeps getting selected instead.

This means, every developer has to copy the ProjectX TestStand folder into the default location manually a SCM update.

 

Suggested solution: make the whole default location directory changeable, to point to a custom directory. Thus during development of different projects, it is much easier to switch between the projects and to have the possibility to check out the code from a SCM to only one directory (and continue working with them).

CreateSameProperty.png

 

Let's say we have a parameter to a subsequence of a named type, and we want to create a so-named Local or FileGlobal with the same type.

One way to do this with our current workflow is to:

  • Type the same property name in the parameter value
  • Right-click the parameter
  • Click on "Create Locals.whatever"
  • mouse over the types menu
  • Glance through most of the types, select the custom type

 

I'm proposing a simpler workflow for cases when you just want to duplicate or "clone" the property with the same name and type in Locals or FileGlobals:

  • Right-click the empty parameter value
  • Select "Create Locals.whatever" or "Create FileGlobals.whatever"

The respective menu options would appear if the so-named variable does not already exist.

The subproperty is created in the Locals or FileGlobals with the same type as the parameter.

Can we have the UI show a different status for a disabled socket?  It shows the socket as "Completed [Passed]" if I disable a socket when running the batch model.  This seems misleading.  It should say "disabled" and maybe have a null symbol icon or something to signify that it didn't actually pass any test.

I was pretty surprised that this isn't already possible or that there wasn't an idea in the ideas exchange for it. The idea is to allow custom step types to embed their 'edit' dialogue into the configuration tab for the step settings. At the moment you have to click a generic 'edit <step type>' button to launch a dialogue.

 

Instead of:

Embed Dialogue.PNG

 

Have:

Embed Dialogue 2.png

 

This would make custom step types much more user friendly and save unnecessary clicks/steps required to custom and bring the experience of configuring steps more in line with the built-in step types.

 

I appreciate that it might require a little more effort on the developers part (e.g. posting new values on value change instead of on 'ok'/'cancel') but it could also help to avoid some issues like 'hanging' TestStand when the dialogue is closed and the panel close isn't disabled/handled.

Currently, the step icon for a custom step type is defined statically:

 

2016-03-04_144812.png

 

 It would be nice if the step icon could also be specitied via expression.  This would allow step types where the step icon changes based on the configuration.  For example, the lock step could be made more intuitive:

 

Current static icon:

2016-03-04_142247.png

 

With dynamic icons:

lockIconExample.png

 

To accomplish this currently, you need to update the icon for the step via the API in the edit substep, which is cumbersome and adds coupling between the edit substep code and the icon names.

The menu to create a new variable (right click on variable in an expression edit control and select Create "VariableName") contains all the data types you can use for the variable, however, in the LabVIEW Panel (and other similar panels or dialogs) there is enough context information about the variable to suggest a data type, for example, if the variable is in a control of type Double we know we should create a Numeric variable. TestStand should add the contextual suggestions to the top of the context menu and bold them so that I can more quickly select the data type I want most of the times, then have a separator and put the normal menu so if I don't want that data type for some reason I can still choose the other data types (see attached image).

The current method of viewing the contents of a 2D array variable can be difficult to read if you have many elements.  My suggestion is to add a feature that allows a right click on the 2D array variable and select a popup to see the array in a row/column format.  It would be nice to able to edit the contents with this view as well.

 

I have uploaded an image of a TestStand view of an array and a LabVIEW view for comparison.  Looking at the LabVIEW version, by having the contents in a row/cool format, adding the scroll bars and index display, I can easily see my array contents.

Download All

Even the "simple " operator interface is too complex for some applications.  It can also be somewhat intimidating to new developers,    

 

Many developers might benefit by having a "bare bones" (ie simplest possible) Operator Interface example to start with

 

 

Current shortcuts for TestStand include Ctrl-D to close executions and Ctrl-F4 to close a sequence file. However, both of those windows show up as tabs in the current GUI layout.

 

Every modern internet browser allows the user to close a tab with Ctrl-W. This would also be a neat feature when only trying to close one report at a time when viewing the results from multiple UUTs, instead of closing all reports by closing all executions with Ctrl-D.

Hi,

 

Exactly as in the subject.

 

Sometimes the names variables are long and could be deeply nested into containers.

 

Now it is difficult to use them as both windows: the main one and Selected are unresizable.

 

After proposed change the property loader would have all default features(behaviours) as you can expect from the window at this place.

 

Current situation presented on the picrure below.

 

850e24cef49a832f99913a8177a26e8e.png

 

Sometimes, it is useful to have "access to TestStand applications" without showing a GUI.

So it would be nice, if there were an additional example in the User Interfaces folder (in addition to Full-Featured and Simple) which does not display an UI during execution. The control over "which sequence is to be executed" should be primarily done by command line parameters, popup panels as alternative.

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 have noticed that many TestStand users are not aware that the sequence editor menu bar and tool bar are fully customizable.  This option is fairly well hidden: You have to right click the toolbar (not a common operation) to access the "customize..." option.  There should be a way to access the Customize dialog from the TestStand Menus, perhaps in Configure:

 

customizeMenus.png

 

It would also be nice if this was accessible from the UI configuration tab in the Sequence Editor options.

In a custom UI I currently need to have two AxSequenceView controls to display sequences:

  1. Connected to the AxSequenceFileViewMgr. This shows the static view of the sequence file and is where you can attach the debug context menu to loop selected steps etc.
  2. Connected to the AxExecutionViewMgr. This shows exactly the same view of the sequence file during execution, with just an additional "Status" column with the result status of each executed step. You can toggle a breakpoint by clicking in the margin but can not select steps or operate a debug context menu here.

Of course I could display both views in the UI but this feels illogical for the user, so I prefer to show only one and switch between them according to context. However this presents problems:

  1. As this post (not one of mine!) says, you have to display the SequenceFileViewMgr view after loading a program because the Execution View would be blank, and then switch to the Execution View when the program is running.
  2. You have to switch back to the Sequence File view when the program ends in order to re-enable the debug context menu. This means that the step statuses disappear before the user has a chance to look at them in detail. It also means that the new view is not aligned to the execution view (i.e. the first visible step is different) - this may be solvable with a lot of programming but I haven't worked out how!.

It feels to me that it would be better for the API to provide a single view of the sequence file that has the debug facilities available, with a status column that is blank (and gets reblanked at the start of every execution). My UI code would be considerably simplified!