How Can I Filter the Results of the Simple Text Report in TestStand

Updated May 8, 2023

Environment

Software

  • TestStand
  • LabVIEW

I would like to filter the report generated by the Simple Text Report (LabVIEW) plugin in TestStand. My client sequence file performs a number of simple high/low tests, as seen below:



It generates the following report:

  • How can I filter based on the returned results?
  • How can I filter on step type in order to remove the rows corresponding to Group Tests? 

First of all, make sure that the Simple Text Report plugin is installed.

Filter the report based on returned results (strings) with filtering expressions

In order to insert different filtering expressions, please:
  • Select Edit » Sequence File Callbacks to launch the Sequence File Callbacks dialog box. 
  • Select SequenceFilePostResultListEntry and press Add in order to add it to the client sequence file, and then press OK to close the dialogue box. This callback is empty by default, but you can use it to alter/manipulate the ResultList after every sequence step that logs a result.
  • In the SequenceFilePostResultListEntry Callback, visible in the Sequence pane as illustrated in the figure below, type in the following expression (filter out the steps that return any other status value than "Passed"):
Parameters.DiscardResult =(Parameters.Result.Status != "Passed")​


The result is:



Filter on step type by modifying the Simple Text Report Plugin itself

Filtering out the Group tests (i.e. the SequenceCall steps) and only displaying rows with a result entry is a bit trickier. This is because filtering out the SequenceCall Steps with filtering expressions (as above) would also filter out the associated results. 

Instead of using filtering expressions, modify the Simple Text Report (LabVIEW) plugin directly. More specifically, a VI named ProcessOneResult.vi included in the SimpleTextPlugin.llb library located in the folder:
<TestStand Public>\Components\Models\ModelPlugins\NI_SimpleTextReport_LabVIEW
  • Open up ProcessOneResult.vi, originally it will look like:
  • Modify it according to (the wires go straight through the false case of the added case structure):


The result is:

Additional Information

Note that in ProcessOneResult.vi you can also change the default message of <missing> to any string you like.