使用 unittest 模块测试 Flask 微服务

Testing Flask microservices using unittest module

我使用 Flask 框架开发了一个非常基本的微服务。

应用程序中的方法如下所示

@app.route('/add, methods=['POST'])
def add_info():
    final = []
    try:
        info_obj.append(json.loads(request.data))
    ...
    return jsonify(final)

现在我正在尝试为此微服务中的这个方法和其他方法编写单元测试。我正在使用 import unittest 编写我的测试。

现在我感到困惑的是如何编写测试来测试这些 http 函数的功能,这些函数不采用 return 常规结果的常规参数,而是从请求数据和 return json 基于那个。

我的做法对吗?如果是,我如何使用 unittest 模块测试类似微服务的功能?

如果您绝对想要进行单元测试,请遵循 Patrick 的指南 here. But I suggest using PyTest。这是一个 breeze 开始。首先你需要一个conftest.py。然后添加名为 test_... .py 的测试文件。你的会议在哪里 $ pytest

Patrick 还有另一个 PyTest + Flask 指南here. You can view a demo of a conftest in a project here on how to set up db etc and a test file here