Automatischer Einheitentest-Generator basierend auf Github
Dies ist ein Engineering, AI-Bereich Automatisierungsworkflow mit 24 Nodes. Hauptsächlich werden Code, Merge, Github, Webhook, GithubTool und andere Nodes verwendet, kombiniert mit KI-Technologie für intelligente Automatisierung. Automatische Generierung von Jest-Tests für GitHub PRs mit doppelter KI-Prüfung
- •GitHub Personal Access Token
- •HTTP Webhook-Endpunkt (wird von n8n automatisch generiert)
- •Möglicherweise sind Ziel-API-Anmeldedaten erforderlich
- •OpenAI API Key
Verwendete Nodes (24)
Kategorie
{
"id": "7vi7pp915Xoh9Ovu",
"meta": {
"instanceId": "6bcff5ef8a06e8086902526a05c2a4c7bf5da8101f89e582301ed78094606f40",
"templateCredsSetupCompleted": true
},
"name": "Automatic Unit Test Creator from Github",
"tags": [],
"nodes": [
{
"id": "abb61423-4f32-41ce-a519-754b0b960503",
"name": "GH - PR abrufen",
"type": "n8n-nodes-base.github",
"position": [
-1820,
-420
],
"parameters": {},
"retryOnFail": true,
"typeVersion": 1,
"alwaysOutputData": false
},
{
"id": "4bef0a06-16e7-4016-badb-5dcfb4c60a69",
"name": ".diff-Datei abrufen",
"type": "n8n-nodes-base.httpRequest",
"position": [
-520,
-100
],
"parameters": {},
"typeVersion": 4.2
},
{
"id": "11edfe11-11a1-4182-bb00-377688d974ed",
"name": "Text in Array aufteilen",
"type": "n8n-nodes-base.code",
"position": [
-300,
-100
],
"parameters": {},
"typeVersion": 2
},
{
"id": "24a69dd5-d956-480a-8b90-4bfe0b65846e",
"name": "Nach Komponenten filtern",
"type": "n8n-nodes-base.code",
"position": [
-80,
-100
],
"parameters": {},
"typeVersion": 2
},
{
"id": "865a7c7c-7459-4869-96b7-9b86b401426f",
"name": "API URL, Owner und Repo extrahieren",
"type": "n8n-nodes-base.code",
"position": [
-940,
40
],
"parameters": {},
"typeVersion": 2
},
{
"id": "3ba6c65f-0089-41b5-8af5-7bcc31345530",
"name": "Dateiname abrufen",
"type": "n8n-nodes-base.code",
"position": [
-80,
140
],
"parameters": {},
"typeVersion": 2
},
{
"id": "fc2667a8-ae72-40da-9a9d-be930fba5ebb",
"name": "Dateien abrufen",
"type": "n8n-nodes-base.githubTool",
"position": [
-1260,
680
],
"parameters": {},
"typeVersion": 1
},
{
"id": "3a32bccc-e751-4757-9d6e-04c4eab58988",
"name": "Structured Output Parser",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
-1020,
680
],
"parameters": {},
"typeVersion": 1.2
},
{
"id": "a112221f-9f2d-4199-83f8-e7713b20154b",
"name": "Benötigte Infos zusammenführen",
"type": "n8n-nodes-base.merge",
"position": [
-300,
140
],
"parameters": {},
"typeVersion": 3.1
},
{
"id": "2a3ad69b-06af-41a7-a3dc-7ace5671553e",
"name": "Test Maker",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-1360,
460
],
"parameters": {},
"typeVersion": 1.8
},
{
"id": "87cbff84-a239-446e-a5c8-ed07432ab7a1",
"name": "Repo abrufen",
"type": "n8n-nodes-base.githubTool",
"position": [
-1140,
680
],
"parameters": {},
"typeVersion": 1
},
{
"id": "3913cdac-ff53-4a46-a445-2fd4b9ab3f9f",
"name": "Code Reviewer",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-900,
460
],
"parameters": {},
"typeVersion": 1.8
},
{
"id": "d36b6f35-1e25-4366-a23d-139e89eb45f0",
"name": "o3-mini",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-1460,
680
],
"parameters": {},
"typeVersion": 1.2
},
{
"id": "c4611e9c-c51b-404d-968a-b144e4251f69",
"name": "gpt4.1-mini",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-840,
680
],
"parameters": {},
"typeVersion": 1.2
},
{
"id": "dfaedcea-5bf5-48f6-9776-f64bb96244ff",
"name": "Zusammenführen",
"type": "n8n-nodes-base.merge",
"position": [
-520,
460
],
"parameters": {},
"typeVersion": 3.1
},
{
"id": "769d0846-4ba7-42bd-9117-8fc1cb9fbb2c",
"name": "Für POST vorbereiten",
"type": "n8n-nodes-base.code",
"position": [
-300,
460
],
"parameters": {},
"typeVersion": 2
},
{
"id": "3c8c6f4a-4031-47d4-9086-81d435f06238",
"name": "Kommentare POSTen",
"type": "n8n-nodes-base.httpRequest",
"position": [
-80,
460
],
"parameters": {},
"typeVersion": 4.2
},
{
"id": "bb3e84fb-f1a9-41f6-8e34-f6fb8b2b7ea7",
"name": "Webhook",
"type": "n8n-nodes-base.webhook",
"position": [
-1240,
40
],
"webhookId": "91136d34-84ba-4256-a657-31812d04cbde",
"parameters": {},
"typeVersion": 2
},
{
"id": "d02bb743-f9ce-4753-9fb3-a0c99a7e5a19",
"name": "2. Node für Tests",
"type": "n8n-nodes-base.code",
"position": [
-1560,
-400
],
"parameters": {},
"typeVersion": 2
},
{
"id": "0a50732e-619d-4def-a63d-d5762934df9b",
"name": "Haftnotiz",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1860,
-520
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "64f8767b-eb19-4aa1-ae71-6959c09c0d50",
"name": "Haftnotiz1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1380,
-120
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "a3df6a54-8fd1-47fe-9e07-d9fb58baa1fa",
"name": "Haftnotiz2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-620,
-180
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "82b5aa37-2b56-436d-bde7-c8788357b6a6",
"name": "Haftnotiz3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1880,
380
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "460aeeaf-e104-4b9c-b434-335e4db73250",
"name": "Structured Output Parser1",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
-700,
680
],
"parameters": {},
"typeVersion": 1.2
}
],
"active": true,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "d0882c15-ed71-40f6-acd7-5848ef4d6d72",
"connections": {
"dfaedcea-5bf5-48f6-9776-f64bb96244ff": {
"main": [
[
{
"node": "769d0846-4ba7-42bd-9117-8fc1cb9fbb2c",
"type": "main",
"index": 0
}
]
]
},
"bb3e84fb-f1a9-41f6-8e34-f6fb8b2b7ea7": {
"main": [
[
{
"node": "865a7c7c-7459-4869-96b7-9b86b401426f",
"type": "main",
"index": 0
}
]
]
},
"d36b6f35-1e25-4366-a23d-139e89eb45f0": {
"ai_languageModel": [
[
{
"node": "2a3ad69b-06af-41a7-a3dc-7ace5671553e",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"87cbff84-a239-446e-a5c8-ed07432ab7a1": {
"ai_tool": [
[
{
"node": "2a3ad69b-06af-41a7-a3dc-7ace5671553e",
"type": "ai_tool",
"index": 0
},
{
"node": "3913cdac-ff53-4a46-a445-2fd4b9ab3f9f",
"type": "ai_tool",
"index": 0
}
]
]
},
"fc2667a8-ae72-40da-9a9d-be930fba5ebb": {
"ai_tool": [
[
{
"node": "2a3ad69b-06af-41a7-a3dc-7ace5671553e",
"type": "ai_tool",
"index": 0
},
{
"node": "3913cdac-ff53-4a46-a445-2fd4b9ab3f9f",
"type": "ai_tool",
"index": 0
}
]
]
},
"2a3ad69b-06af-41a7-a3dc-7ace5671553e": {
"main": [
[
{
"node": "3913cdac-ff53-4a46-a445-2fd4b9ab3f9f",
"type": "main",
"index": 0
}
]
]
},
"abb61423-4f32-41ce-a519-754b0b960503": {
"main": [
[]
]
},
"c4611e9c-c51b-404d-968a-b144e4251f69": {
"ai_languageModel": [
[
{
"node": "3913cdac-ff53-4a46-a445-2fd4b9ab3f9f",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"3913cdac-ff53-4a46-a445-2fd4b9ab3f9f": {
"main": [
[
{
"node": "dfaedcea-5bf5-48f6-9776-f64bb96244ff",
"type": "main",
"index": 1
}
]
]
},
"3ba6c65f-0089-41b5-8af5-7bcc31345530": {
"main": [
[
{
"node": "2a3ad69b-06af-41a7-a3dc-7ace5671553e",
"type": "main",
"index": 0
}
]
]
},
"3c8c6f4a-4031-47d4-9086-81d435f06238": {
"main": [
[]
]
},
"4bef0a06-16e7-4016-badb-5dcfb4c60a69": {
"main": [
[
{
"node": "11edfe11-11a1-4182-bb00-377688d974ed",
"type": "main",
"index": 0
}
]
]
},
"769d0846-4ba7-42bd-9117-8fc1cb9fbb2c": {
"main": [
[
{
"node": "3c8c6f4a-4031-47d4-9086-81d435f06238",
"type": "main",
"index": 0
}
]
]
},
"a112221f-9f2d-4199-83f8-e7713b20154b": {
"main": [
[
{
"node": "3ba6c65f-0089-41b5-8af5-7bcc31345530",
"type": "main",
"index": 0
}
]
]
},
"d02bb743-f9ce-4753-9fb3-a0c99a7e5a19": {
"main": [
[]
]
},
"24a69dd5-d956-480a-8b90-4bfe0b65846e": {
"main": [
[
{
"node": "a112221f-9f2d-4199-83f8-e7713b20154b",
"type": "main",
"index": 0
}
]
]
},
"11edfe11-11a1-4182-bb00-377688d974ed": {
"main": [
[
{
"node": "24a69dd5-d956-480a-8b90-4bfe0b65846e",
"type": "main",
"index": 0
}
]
]
},
"3a32bccc-e751-4757-9d6e-04c4eab58988": {
"ai_outputParser": [
[
{
"node": "2a3ad69b-06af-41a7-a3dc-7ace5671553e",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"460aeeaf-e104-4b9c-b434-335e4db73250": {
"ai_outputParser": [
[
{
"node": "3913cdac-ff53-4a46-a445-2fd4b9ab3f9f",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"865a7c7c-7459-4869-96b7-9b86b401426f": {
"main": [
[
{
"node": "4bef0a06-16e7-4016-badb-5dcfb4c60a69",
"type": "main",
"index": 0
},
{
"node": "a112221f-9f2d-4199-83f8-e7713b20154b",
"type": "main",
"index": 1
},
{
"node": "dfaedcea-5bf5-48f6-9776-f64bb96244ff",
"type": "main",
"index": 0
}
]
]
}
}
}Wie verwende ich diesen Workflow?
Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.
Für welche Szenarien ist dieser Workflow geeignet?
Experte - Engineering, Künstliche Intelligenz
Ist es kostenpflichtig?
Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.
Verwandte Workflows
Diesen Workflow teilen