单元测试flask应用程序,该应用程序通过REST从其他应用程序请求外部资源

单元测试flask应用程序,该应用程序通过REST从其他应用程序请求外部资源,flask,Flask,我对为python编写单元测试用例非常陌生,需要一些帮助 我有一个基于Flask的应用程序,它通过REST在内部调用另一个url 示例代码 @sample.route('/testing', methods=["GET"]) def testing(): resp = requests.get("some url") data = resp.json() resp1 = requests.post("another url", data) return resp1

我对为python编写单元测试用例非常陌生,需要一些帮助

我有一个基于Flask的应用程序,它通过REST在内部调用另一个url

示例代码

@sample.route('/testing', methods=["GET"])
def testing():
    resp = requests.get("some url")
    data = resp.json()
    resp1 = requests.post("another url", data)
    return resp1.status_code()
现在,因为对于单元测试,我的另一个模块还不可用,所以我需要为这个模块编写单元测试用例。 因此,我需要模拟这些rest请求,并为每个请求返回自定义数据和状态代码

请任何人帮助我们如何进行这项工作。 我在网上尝试了各种链接,但没有按照我的预期工作。

你可以通过多种方式。一般来说,它将涉及一个伪API,在调用时返回预设值。 此外,请考虑这两个API之间的紧密耦合,这可能会导致未来的问题。尝试重新制定您的ARQUIT体系结构,以便它能够以多种方式使用。一般来说,它将涉及一个伪API,在调用时返回预设值。
此外,请考虑这两个API之间的紧密耦合,这可能会导致未来的问题。尝试重新构造您的Arquit体系结构,以便在遇到此类问题时使用

我总是编写工厂()。您创建了一个请求工厂,该工厂具有执行get/post请求所需的需求;通过一些配置文件,您可以确定是在进行实际调用还是在调用模拟数据。但这不是集成测试,而不是单元测试吗?当我遇到这样的问题时,我总是编写factories()。您创建了一个请求工厂,该工厂具有执行get/post请求所需的需求;通过一些配置文件,您可以确定是在进行实际调用还是在调用模拟数据。但这不是集成测试,而是单元测试吗?