假设我有一个API端点,只有拥有有效访问令牌的授权用户才能访问其资源,类似于:
from flask_restful import Resource
from flask_jwt_extended import jwt_required
class Collection(Resource):
@jwt_required
def get(self):
"""
GET response implementation here.
"""
# Queries and logic here
data = 10
if(is_everythig_ok()):
return {"data": data}, 200
else:
return {"message":"Failed to get data."}, 400
并假设存在一个LoginUser端点,该端点返回一个有效的access_token,那么当用户具有有效的访问令牌时,我该如何编写一些单元测试以重现两个状态代码(成功则为200,失败则为400)当用户没有有效的access_token时。
我已经用POSTMAN测试了端点,这似乎还可以,但是我还需要编写一些单元测试来证明。那么,这样做的正确方法是什么?
答案 0 :(得分:3)
由于这是一个API,因此您真正想要的是集成测试。我这样做的方式是这样的:
您最终将获得许多可以自动化的集成测试,postman非常擅长于此,您可以为每个端点构建集合并轻松运行它们。
除此之外,您还可以开始衡量每个请求执行的时间,并开始查看花费太长时间的请求。
对方法内部的逻辑进行单元测试,但不对授权系统,对端点和控制器进行逻辑测试。您进行集成测试的人。