Yes, when an error occured, you terminate the execution means TestStand execute the clean-up of sequences which are still running, then execute PostUUT and PreUUT.
When you are in PreUUT, check the boolean value (we can call it error flag)
if false (default value), display the serial number popup and store it in a station globals property, then execute the Mainsequence
if true (mean that an error occurred), don't display the serial number popup and get the previous serial numbere stored in Station globals
You can also store the error flag in station globals
Hope it helps
Thank you I get that.
One of the goals besides of the 'automation' of the tests, is that
if an Error ocurrs:
1. Log that Error
3. Ignore that error if it is still there.
Do you think is it possible to ignore a specific Error after the restart with the same Logic you are using in your last Answer?
I think you should record all your error code in a array when you are in the PostStepRuntimeError callback.
When you got an error and go to the PostStepRuntimeError callback, check whether this error is in this array
- If not, add the new error code in the array and restart your test
- If yes, ignore the error and continue your test
Thank you again for your answers.
That sounds like it really could work. And this array must be a StationGlobal variable right?
Because you want to reinitialize data at begining of each execution, you can't store data in your sequences. So Station globals seems the good place to me
That worked pretty well. Thanks a lot. I'm new to Teststand and thought Terminate wasn't something good to do, and since the instructions that were given to me were another ones, Terminate didn't come to my mind.
I appreciate you taking time to help me.