我正在尝试编写一套自动化集成测试来测试对Yahoo Fantasy Sports API的C#客户端库调用。一些应用程序接口调用需要OAuth令牌,这是我遇到一些困难的地方。我可以使用web浏览器生成访问密钥和密码,然后在我的测试代码中传递这些密钥和密码,但令牌在一小时后过期,因此我需要在任何时候运行测试时手动重新生成这些令牌并更新我的测试配置。
当需要OAuth令牌时,有没有编写应用程序接口集成测试的最佳实践?
发布于 2016-05-28 01:50:37
通常,此类api提供了一种无需使用浏览器即可获得身份验证令牌的方法。不过,我不确定雅虎体育是否也是其中之一。
通常情况下,你必须创建一个应用程序来访问OAuth2系统,然后他们会给你一个ClientID和ClientSecret,然后你点击一个令牌URL并接收访问令牌,然后访问令牌在一个小时内有效。
不过,您可能希望考虑根本不进行集成测试。如果我是你,我会简单地模拟Api响应,并在你的测试中使用它。因此,为每个调用gt一个响应样本,然后简单地创建一个伪响应,该响应在您点击它时返回该响应。然后,您仍然可以运行测试。
您需要回答的问题是:我到底在测试什么?您是在测试第三方APi,还是想测试您自己的代码。
此外,不要忘记每个api允许在特定的时间窗口内被点击一定的次数。又一个伪装的理由,我想说
https://stackoverflow.com/questions/15297631
复制相似问题