[英]How to properly test an app with REST API + Flask JWT extended?
假设我有一个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测试了端点,这似乎还可以,但是我还需要编写一些单元测试来证明。 那么,这样做的正确方法是什么?
由于这是一个API,因此您真正想要的是集成测试。 我这样做的方式是这样的:
您将最终获得许多可以自动化的集成测试,postman擅长于此,您可以为每个端点构建集合并轻松运行它们。
不仅如此,您还可以开始衡量每个请求执行的时间,并开始查看花费太长时间的请求。
对方法内部的逻辑进行单元测试,但不对授权系统,对端点和控制器进行逻辑单元测试。 那些您进行集成测试。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.