Today, for fun, let’s talk about how you might test an API that’s a VIN checker using web services. I spent 4 years in property and casualty insurance, and one of the activities this involved was keying in VIN numbers. What’s a VIN number? One character longer than a credit card number, it is a unique identifier tracking code for a car, truck, motorcycle, ATV or trailer, like a fingerprint. When insuring a vehicle, the price is calculated on things like vehicle’s value (in case of a total loss), how good the brakes are (for preventing a crash), if there’s a GPS-tracking system in case of theft, etc. By the way, being painted red does not raise the rate – VIN’s don’t track paint color, and you could always repaint your car anyway.
Now, imagine that you’ve created one of the many dozens of web API’s for decoding VIN numbers, and wanted to verify that it works correctly. What would you need to test to ensure proper coverage (ironically, proper coverage is also a primary concern of auto insurance)?
Well, for starters, not all VIN checkers are the same. The features vary, and as a result, the tests would vary to go along with the different possibilities when it comes to components of the request and the response. Let’s use SOAP web service testing for analyzing the possibilities here. SOAP uses a well-defined structure, useful when it comes to parsing the output from such a web application, where the vehicle can get defined like an object, which is well-suited for XML. Read more here.