Web Services allow web-based applications to communicate without operating system and programming language dependencies. Because Web Services are high-level, it is often difficult to diagnose problems when things go wrong. A programmer may have to inspect every layer between application code and WSDL contents before diagnosing a bug. Luckily, there are open source tools available to help test Web Services. InfoWorld has written a review of three open source Web Services unit testing frameworks here.