I am using TestStand 2010 for sequencing the test software. I am using batch process model for validating multiple units. My requirement is to run the socket 0 first and socket 1 next etc.. But unfortunately I am not able control execution of the sockets in sequence. The teststand is taking control and sometimes Socket 0 is getting executed and sometime socket 1 is getting executed first. I want always test socket 0 should be executed and then other.
If any one knows how to set the sequence in TestStand please help me out.
Solved! Go to Solution.
In your client sequence, you can have a rendezvous and then add steps for sequencing. You can use the variable runState.TestSockets.Myindex to get the running thread's number. Have a conditional statement using the thread index and check if the previous thread (runState.TestSockets.Myindex-1) has completed the execution. You can create a Boolean variable array to monitor the execution state.
You should be using Batch synchronization. That is exactly what it's for. By default, the testsockets all run in parallel, but using the batch synchronization step types or step property setting, you can specify a step or section of a sequence that runs serially (i.e. in order from 0 to n), one-thread only, or parallel.
You could also instead consider using the "Sequential Batch mode" of the model which you can enable in the model options dialog. This might be the exact behavior you are looking for.
Hope this helps,