如何使用与远程Web服务器交互的代码测试错误条件?

时间:2008-11-20 11:23:48

标签: unit-testing language-agnostic

我有一个小项目,基本上是网站API的Python包装。

它经过了相当好的测试,但有一些条件我无法解决如何轻松测试:远程API无法访问或以其他方式损坏。

更具体地说,我非常希望对以下各项进行测试:

  • 当站点无法访问时(连接超时)
  • 当站点可访问时,但返回HTTP错误代码(例如,错误404或500)
  • 内容格式错误。该站点具有XML接口。不久之前,该网站出现了问题,应该是XML文件的页面是一个HTML页面,打破了XML解析

我将如何测试这些案例?我唯一能想到的是将API的URL更改为不存在的服务器(针对无法访问的情况),以及针对错误500/404 /格式错误的数据的本地Web服务器

1 个答案:

答案 0 :(得分:2)

另一个答案是模拟实际调用网站的代码,并让它返回您需要的错误条件。我猜这意味着在python

中模拟urllib或httplib