我正在为一个流行的 API 开发一个客户端库。目前,我对所述客户端的所有单元测试都在对测试帐户进行实际的 API 调用。
这是一个例子:
def test_get_foo_settings(self):
client = MyCustomClient(token, account)
results = client.get_foo_settings()
assert_is(type(results), list)
我想停止对我的测试帐户进行实际的 API 调用。
我应该如何解决这个问题?我应该使用Mock来模拟对客户端的调用和响应吗?
此外,我对使用此客户端库进行测试的理念感到困惑。我对测试实际的 API 不感兴趣,但是当涉及到不同的因素时,比如被调用的方法、可能的返回结果的排列等等 - 我不确定我应该测试什么和/或什么时候可以安全做出假设(例如模拟响应)。
在我的场景类型中如何使用 Mock 的任何方向和/或示例将不胜感激。