【发布时间】:2013-04-12 07:56:41
【问题描述】:
如何为与网站交互的应用程序编写集成测试? 更具体地说,我有一个与 Flickr 网站交互的应用程序。在 OAuth 授权过程中,flickr 网站显示验证器代码,用户必须将其复制并粘贴到我的应用程序中。现在我如何自动化这个过程,以便我可以自动测试应用程序。我正在使用 swing 作为 GUI。
【问题讨论】:
标签: java unit-testing junit integration-testing
如何为与网站交互的应用程序编写集成测试? 更具体地说,我有一个与 Flickr 网站交互的应用程序。在 OAuth 授权过程中,flickr 网站显示验证器代码,用户必须将其复制并粘贴到我的应用程序中。现在我如何自动化这个过程,以便我可以自动测试应用程序。我正在使用 swing 作为 GUI。
【问题讨论】:
标签: java unit-testing junit integration-testing
编写依赖于外部服务的自动化可能很棘手。对于这样的事情,我建议你设置一个模拟服务,或者其他使用预设响应的方式。
我在这方面取得了一些成功:
编写外部模拟服务,使用类似bottle.py 的东西。这样做的好处是几乎不需要对现有代码库进行修改,但显然需要做一些工作来确保这个外部进程作为测试套件的一部分得到正确管理,尤其是在 CI 环境中运行测试时。
使用依赖注入,您可以编写模拟网络组件,并将真实网络组件交换为您的模拟组件进行测试。我推荐这种方法,但它需要对您的代码库进行一些修改。
【讨论】: