NI TestStand

Showing results for 
Search instead for 
Did you mean: 

Multithreaded testing in sequential model and post actions

How do I make a failing step go to cleanup in the sequential model using multithreading?


Here is what I'm doing in the main sequence:


step 1

step 2

execute sequence A in new thread

step 3

step 4

step 5

wait for execute sequence A to finish

step 6



If step 4 fails, what I think I want is for the threads to synchronize before proceeding to cleanup, otherwise the cleanup steps might impact sequence A's steps.


The "wait for execute sequency A to finish" step can fail, but I think that happens only if one of it's steps fails; step 4 failing won't do it.


Maybe I should insert a custom condition expression in the wait  step like



AnyOf(RunState.SequenceFailed, RunState.ErrorReported)


0 Kudos
Message 1 of 3

Hello stephenb2


I was thinking that, I mean use the RunState then create a custom condition.


That is a good idea

0 Kudos
Message 2 of 3

That worked, although the expression should have been negated for the execute if false case.


! AnyOf(RunState.SequenceFailed, RunState.ErrorReported)

Thanks. I just was wondering if I had missed a better approach. 

0 Kudos
Message 3 of 3