我正在尝试为我的应用程序针对第三方服务的响应编写自动化测试。
通常,服务始终处于启动状态。我正在寻找一种可靠的方法来模拟它,特别是在不需要root访问的情况下。另外还有一个问题:被测试的应用程序将在一个单独的过程中。我想只是改变指向服务的配置,但这不起作用。
这一切都发生在unix环境(linux,os x)中,所以我希望它能在那里工作,但我不关心windows。有没有快速方法来阻止传出端口或类似的东西?它也必须是临时的,因为这必须发生在更大的测试套件中。
希望有一种相当标准的做法,我还没有找到。
澄清:这是一项功能测试,以确保gui在服务中断时正确响应。单元测试已经涵盖。
答案 0 :(得分:1)
代理服务。指向服务的代理。击落代理服务。
答案 1 :(得分:0)
如果您的应用程序在设计时考虑了单元测试,那么您应该能够使用不同的实现替换第三方服务。
这个想法是你可以用一个模拟对象替换服务,模拟对象返回虚拟数据进行测试。您还可以使用抛出异常或超时的对象替换服务。
使用模拟服务,测试人员可以使用该应用程序,看看它如何响应服务故障。