我正在试验 MaxMind GeoIP (lite) DB。
其中一部分是试图看看我是否可以进行可靠的单元测试。
对于单元测试,我需要一些 IP 地址,我可以依赖它始终发送相同的信息。
大多数 IP 地址都会四处移动,我假设它们在 GeoIP 数据库中更加流畅,但是是否有一些我可以合理依赖的 IP 地址(无论出于何种原因)?
我正在试验 MaxMind GeoIP (lite) DB。
其中一部分是试图看看我是否可以进行可靠的单元测试。
对于单元测试,我需要一些 IP 地址,我可以依赖它始终发送相同的信息。
大多数 IP 地址都会四处移动,我假设它们在 GeoIP 数据库中更加流畅,但是是否有一些我可以合理依赖的 IP 地址(无论出于何种原因)?
马汀,
您可以使用 Pingdom 探测服务器 IP 地址作为参考。它是 24x7 运行的物理服务器,除非数据中心需要,否则很少重新分配到其他位置。
您还可以使用API 单元测试中的测试数据库。这些足够小,可以包含在您的回购中。
方法 1:如果重点是测试您的代码在 Maxmind 报告 IP 地址位于特定国家或其他任何地方时的行为,请存根 Maxmind 库方法以返回每次测试所需的答案。我使用过 Maxmind,而这种方法正是我所需要的。
方法 2:选择一个您希望在您需要的国家/地区出现的主机名(例如 whitehouse.gov),每次运行测试时查找它的 IP 地址,然后使用它。