使用n8n进行接口测试

星期五, 1月 16, 2026 | 2分钟阅读 | 更新于 星期五, 1月 16, 2026

@
使用n8n进行接口测试

如何使用 n8n 进行接口测试的资源。

视频地址

测试接口的文档

Dummy Json

n8n code 节点模拟断言代码

// 单接口
const resp = $input.first().json;

if (resp.status !== "ok") {
  throw new Error("Response status error");
}
if (resp.method !== "GET") {
  throw new Error("Response method error");
}

return {
  json: { message: "ok" },
};
// 接口编排
const resp = $input.first().json;

if (resp.firstName !== "Emily") {
  throw new Error("First name is incorrect!");
}

return {
  json: { message: "ok" },
};

生成 python unittest 及 runner 代码的提示词

用python的unit test写下面接口的测试用例。
// Could be GET or POST/PUT/PATCH/DELETE
fetch('https://dummyjson.com/test')
  .then(res => res.json()) .then(console.log);

/* { status: 'ok', method: 'GET' } */

再写个http节点去运行测试用例,最好是返回的内容里能看到用例执行的情况。

目录结构

project/
├── test_api.py         # unittest 用例
├── runner.py      # HTTP 测试运行器

测试用例代码

# test_api.py
import unittest
import requests

class TestDummyJsonAPI(unittest.TestCase):

    def test_get_test_endpoint(self):
        url = "https://dummyjson.com/test"
        response = requests.get(url)

        # 1. HTTP 状态码
        self.assertEqual(response.status_code, 200)

        data = response.json()

        # 2. 返回字段校验
        self.assertIn("status", data)
        self.assertIn("method", data)

        # 3. 值校验
        self.assertEqual(data["status"], "ok")
        self.assertEqual(data["method"], "GET")


if __name__ == "__main__":
    unittest.main()

Fast api runner 代码

# runner.py

from fastapi import FastAPI, Response
import unittest
import io
import sys

app = FastAPI()


@app.get("/run-tests")
def run_tests():
    # 捕获 unittest 输出
    stream = io.StringIO()
    runner = unittest.TextTestRunner(
        stream=stream,
        verbosity=2
    )

    loader = unittest.TestLoader()
    suite = loader.discover(".")

    result = runner.run(suite)

    output = stream.getvalue()

    # 组装返回内容
    response_body = {
        "testsRun": result.testsRun,
        "failures": len(result.failures),
        "errors": len(result.errors),
        "wasSuccessful": result.wasSuccessful(),
        "output": output
    }

    return response_body

Fast api 安装依赖以及运行的命令

pip install fastapi uvicorn requests
uvicorn runner:app --reload --host 0.0.0.0

访问宿主机 ip 的各种方式

  • Mac obrstack: host.orb.internal:8000/run-tests
  • Linux: host.docker.internal:8000/http://172.17.0.1:8000
  • Win/Mac docker desktop: host.docker.internal:8000

© 2026 n8n中文教程站点

🌱 Powered by Hugo with theme Dream.

n8n中文教程网

欢迎来到 n8n 中文教程网!这里是中文世界最容易上手的 n8n 学习基地。

我们用最简单的方式,带你学会自动化流程、AI 节点、数据处理、跨平台集成等核心技能。

无论你想自动化工作、提升效率,还是构建复杂的工作流,这里都有你需要的内容。