我正在为NodeJS API设置测试(在hapi.js上),我不确定测试经过身份验证的API的典型约定。
目前,路由处理程序,身份验证和授权都在单独的模块中,因此我考虑单独测试每个模块而不是在测试中调用HTTP端点(最终会触及所有身份验证/授权/处理程序逻辑)。
但是,根据我从some testing guides看到的内容,似乎对如何/测试内容有不同的看法。意见似乎是:
如果我确实调用了API端点,那是否意味着我在每个用例中都需要一个有效的身份验证令牌 - 或者禁用auth进行测试?
答案 0 :(得分:1)
这取决于有多少端点需要相同的身份验证。如果它们都具有相同的身份验证和代码路径,那么您可以进行一些身份验证测试。他们可能会测试:
您可以使用相同的端点编写这3个测试。如果他们共享相同的auth代码路径,则没有真正的理由来测试其他端点。实际上,auth代码应该与每个端点的功能分开。
除了auth测试之外,您还可以使用有效的auth进行一些测试。