Test steps in the WATS Client API are made of two parts: the Step and the Test (measurement).
Because a step can have multiple tests, both step and test have a status.
var step = numericTests.AddNumericLimitStep("Multiple Numeric Step"); //Failed
step.AddMultipleTest(16.0, CompOperatorType.EQ, 16.0, "V", "Measurement 1"); //Passed
step.AddMultipleTest(16.0, CompOperatorType.EQ, 16.2, "V", "Measurement 2"); //Failed
step.AddMultipleTest(16.0, CompOperatorType.GE, 16.0, "V", "Measurement 3"); //Passed
step.AddMultipleTest(16.0, CompOperatorType.GE, 16.5, "V", "Measurement 4"); //Failed
For single measurement steps these two statuses must be in sync, otherwise you get weird results in UUT reports and Test Step & Yield Analysis.
Pre WATS Client 6.1.67, the statuses can become mismatched by changing the statuses after adding the test:
var step = numericTests.AddNumericLimitStep("Single Step");
var test = step.AddTest(16.0, CompOperatorType.GELE, 15.8, 16.2, "V"); //Step status Passed, measure status Passed
test.MeasureStatus = StepStatusType.Failed; //Step status Passed, measure status Failed
step.Status = StepStatusType.Error; //Step status Error, measure status Failed
From WATS Client 6.1.67 onward the API will automatically synchronize this values for single measurement NumericLimit/StringValue/PassFail steps.
Under normal circumstances the step and test status will stay in sync:
- Let the API calculate status based on measurement and limits (both step and measure status will be Passed)
var step = numericTests.AddNumericLimitStep("Step 1");
var test = step.AddTest(16, CompOperatorType.GELE, 15.8, 16.2, "V"); //Step status Passed, measure status Passed
- Explicitly set the status with the AddTest method
var step = numericTests.AddNumericLimitStep("Step 2");
var test = step.AddTest(16, CompOperatorType.GELE, 15.8, 16.2, "V", StepStatusType.Failed); //Step status Failed, measure status Failed
Comments
0 comments
Please sign in to leave a comment.