我正在使用Flask和Pytest开始编写一个带有单元测试的REST服务,但是我遇到了一些问题。
我想为我的简单端点编写一个简单测试,但在运行测试时我一直收到一个“Working outside of application context.”的错误提示。
这是我的端点:
from flask import jsonify, request, Blueprint
STATUS_API = Blueprint('status_api', __name__)
def get_blueprint():
"""Return the blueprint for the main app module"""
return STATUS_API
@STATUS_API.route('/status', methods=['GET'])
def get_status():
return jsonify({
'status' : 'alive'
})
这是我尝试测试它的方式(我知道它应该测试失败):
import pytest
from routes import status_api
def test_get_status():
assert status_api.get_status() == ''
我猜想如果我不构建整个应用程序就无法尝试该方法。但是如果是这种情况,我真的不知道如何解决这个问题。