单元测试需要OAuth令牌的api

本文关键字:api 令牌 OAuth 单元测试 | 更新日期: 2023-09-27 18:03:12

我正在尝试编写一套自动化集成测试,以测试我的c#客户端库对Yahoo Fantasy Sports API的调用。几个API调用需要OAuth令牌,这是我遇到一些困难的地方。我可以使用web浏览器生成访问密钥和秘密,然后在我的测试代码中传递它们,但是令牌在一个小时后过期,所以我需要手动重新生成这些令牌,并在我想运行测试的任何时候更新我的测试配置。

当需要OAuth令牌时,编写API集成测试是否有最佳实践?

单元测试需要OAuth令牌的api

通常,这样的api提供了一种无需使用浏览器即可获得身份验证令牌的方法。我不确定雅虎体育是否是其中之一。

通常你必须创建一个应用程序来访问OAuth2系统,然后他们给你一个ClientID和ClientSecret,然后你点击一个令牌URL并接收访问令牌,然后一个小时有效。

您可能想要考虑根本不进行集成测试。如果我是您,我会简单地模拟Api响应并在测试中使用它。因此,为每个调用获取响应的样本,然后简单地创建一个假响应,在您点击它时返回它。然后,您仍然可以运行测试。

你需要回答的问题是:我到底在测试什么?你是在测试第三方APi还是你想测试你自己的代码?

另外,不要忘记每个api都允许在特定的时间窗口内被访问特定的次数。还有一个理由,我要说