When testing Web Services it’s important to know if the service/contract has changed so that you can conduct testing accordingly. From experience, when developers build Web Services using .NET, changes can be made to the service unknowingly. Because of this, a tester must add another test case to his arsenal to check for those changes. Fortunately detecting changes is really simple and can be done with two tools you most likely already have in your testing toolbox: a Web browser and a file differencing tool like Beyond Compare.
Below, I’ll show you how I detect Web Service changes. For the purpose of these instructions I’ll use two example product versions Product 1.0 and Product 1.1:
Simply put, we need to compare one Web Service contract to the other; the contract being the WSDL.
- Point Internet Explorer towards the Product 1.0 Web Service, at the end of the Web Service you’ll need to tack on the query “?wsdl”. Your URL will look some like: http://localhost/Product1/Product1WebService.asmx?wsdl
IE will then display a page of XML.
- Save the WSDL by navigating to File > Save As, save the file as Product10WebService.asmx
- Point Internet Explorer towards the Product 1.1 Web Service WSDL
- Save the WSDL as Product11WebService.asmx
- Open your file differencing tool and compare the two saved .asmx files.
- Build your test cases accordingly. Mine typically are constructed and divided by breaking changes (modifications of existing items) and non-breaking changes (additional items added).
Simple, yet very powerful for a tester.