我工作的公司是一家拥有一套应用程序的软件供应商。还有一些网络服务,当然,即使应用程序发生变化,它们也必须保持稳定。我们在这方面并不总是成功,有时客户会发现升级后服务的行为不像以前那样。
我们现在想更好地处理这个问题。一般来说,Web 服务不应该改变,如果它们必须改变,至少我们会知道并记录改变。
但是我们如何确保这一点?一个想法是在每个版本中将 WSDL 文件与以前的版本进行比较。这将确保接口不会改变,但它不会检测到行为发生变化,例如,如果某个公共库中引入了错误。
另一个想法是建立一套服务测试,例如使用soapUI。但是,我们永远不会知道我们是否已经涵盖了足够多的案例。
对此有哪些最佳实践?