In SOAtest, I always select Value Assertion from XML Assertor to validate the data accuracy in WCF response format. Recently I have seen the following error message very often. For example,
Element "../PhoneNumberTen" could not be located or did not contain text content.
If I Click “Evaluate XPath” button, “No nodes found” message appears.
If I view the response data in the Traffic Viewer, PhoneNumberTen is blank. It means when the value is blank, SOAtest regards it as “No nodes found”.
Because the data is dynamic from SQL Server, it is possible to make the test failed due to the issue above. How do I fix this issue?
Add a new Conditional Assertion and use the following condition.
If Has Children Assertion = true
Then validate the value of PhoneNumberTen
It means when the data is blank, the validation will be ignored.
After using this condition above, the tests pass!