我正在开发一个后端API,它使用 Github的API 来检索一些回购并用它做一些事情。此外,我正在使用 Codeship CI ,因此我需要将所有数据都放在代码中才能正确构建。
我的后端/api/github/repos
中有一条路由,它将Github access_token
作为参数,并使用https://api.github.com/user/repos
端点列出所有已记录的用户存储库。
我的疑问是:我如何对这条路线进行单元测试?我不能在单元测试中编写access_token
因为它是敏感数据而我将它存储在Github公共存储库中我可以将该数据播种到数据库,因为access_token
仍将写入代码中。我应该在哪里保留access_token
?还有另一种方法吗?
我正在使用Laravel框架在PHP中开发,但正如您所看到的,这个问题与语言无关。
答案 0 :(得分:0)
有多种方法可以做到这一点:
也可能有其他方式。您选择哪一个取决于您的应用。如果api密钥与大多数单元测试相关,那么你可以选择#2,否则#1。 #3非常适合大型应用程序 - 更多层次的抽象和更清晰的代码,但是针对中小型应用程序的过度工程