Konfigurieren automatisierter QualitĂ€tssicherung und Sicherheitsleitplanken¶
Ăbersicht¶
Jeder von der 4Geeks AI Factory generierte Code durchlĂ€uft ein automatisiertes Quality Gate, bevor er jemals von einem menschlichen Entwickler ĂŒberprĂŒft wird. Dieses Gate fĂŒhrt sofortige Schwachstellenscans und KI-gesteuerte Komponententests durch und stellt so sicher, dass die Geschwindigkeit niemals die Sicherheit beeintrĂ€chtigt.
In diesem Tutorial lernen Sie:
- Wie das Quality Gate funktioniert
- Welche Sicherheitsscans werden durchgefĂŒhrt? â Wie Unit-Tests automatisch generiert werden
- So konfigurieren Sie QA-Regeln fĂŒr Ihr Projekt
- Wie man Quality Gate-Ergebnisse interpretiert
Die Quality Gate-Pipeline¶
AI-Generated Code
â
âŒ
âââââââââââââââââââââââââââââââââââ
â QUALITY GATE â
â â
â 1. Static Code Analysis â
â 2. Vulnerability Scanning â
â 3. AI-Generated Unit Tests â
â 4. Code Style Validation â
â 5. Performance Analysis â
â 6. Dependency Audit â
â â
â âââââââââââ âââââââââââ â
â â PASS âââââșâ FAIL â â
â âââââââââââ âââââââââââ â
ââââââââââŹââââââââââââââââŹââââââââ
â â
⌠âŒ
Human Review Auto-Fix & Retry
(Senior Arch) (up to 2 attempts)
Schritt 1: Die Scans verstehen¶
1. Statische Code-Analyse¶
- Was ĂŒberprĂŒft wird: CodequalitĂ€t, KomplexitĂ€t, Wartbarkeit
- Verwendete Tools: ESLint, Pylint, SonarQube (sprachabhÀngig)
- Durchgesetzte Regeln: Die Codierungsstandards Ihres Projekts + Best Practices der Branche
- Ausgabe: QualitÀtsbewertung (A-F) mit konkreten VerbesserungsvorschlÀgen
2. Schwachstellenscan¶
- Was ĂŒberprĂŒft wird: OWASP Top 10, CWE-Schwachstellen, Injektionsrisiken
- Verwendete Tools: Snyk, Semgrep, CodeQL
- Abdeckung: SQL-Injection, XSS, CSRF, Authentifizierungsfehler, unsichere AbhÀngigkeiten
- Ausgabe: Schwachstellenbericht mit Schweregradbewertung (Kritisch, Hoch, Mittel, Niedrig)
3. KI-generierte Unit-Tests¶
- Was es tut: Generiert automatisch Komponententests fĂŒr neuen Code
- Abdeckungsziel: Mindestens 80 % Codeabdeckung fĂŒr neuen Code
- Test-Framework: Jest (JavaScript/TypeScript), pytest (Python), JUnit (Java)
- Ausgabe: Testdateien mit Behauptungen, RandfÀllen und Fehlerszenarien
4. Validierung des Codestils¶
- Was ĂŒberprĂŒft wird: Formatierung, Namenskonventionen, Dateiorganisation
- Verwendete Tools: Prettier, Black, gofmt (sprachabhÀngig)
- Regeln: Der konfigurierte Styleguide Ihres Projekts
- Ausgabe: Automatisch formatierter Code- oder Stilverletzungsbericht
5. Leistungsanalyse¶
- Was ĂŒberprĂŒft wird: ZeitkomplexitĂ€t, Speichernutzung, N+1 Abfragen
- Erkennung: Ineffiziente Schleifen, unbegrenzte Rekursion, fehlende Indizes
- Ausgabe: Leistungswarnungen mit OptimierungsvorschlÀgen
6. AbhĂ€ngigkeitsprĂŒfung¶
- Was ĂŒberprĂŒft wird: Bekannte Schwachstellen in AbhĂ€ngigkeiten
- Datenbank: NVD, GitHub Advisory Database, Snyk Vulnerability DB
- Ausgabe: Liste der anfÀlligen AbhÀngigkeiten mit Upgrade-Empfehlungen
Schritt 2: QA-Regeln konfigurieren¶
Zugriff auf QA-Einstellungen¶
- Gehen Sie zu den KI-Werkseinstellungen Ihres Projekts.
- Navigieren Sie zu Quality Gate-Konfiguration
Scanregeln konfigurieren¶
| Einstellung | Optionen | Standard |
|---|---|---|
| MindestqualitÀtswert | A, B, C, D, F | B |
| Kritische Schwachstellen blockieren | Ja/Nein | Ja |
| Bei hohen Schwachstellen blockieren | Ja/Nein | Ja |
| Mindesttestabdeckung | 0-100 % | 80 % |
| StilverstöĂe automatisch beheben | Ja/Nein | Ja |
| Max. Wiederholungsversuche | 1-5 | 2 |
Benutzerdefinierte Regeln¶
Projektspezifische Regeln hinzufĂŒgen:
custom_rules:
# Require JSDoc comments on all public functions
- rule: require-jsdoc
severity: warning
pattern: "export (function|class)"
# No console.log in production code
- rule: no-console-log
severity: error
pattern: "console\\.log"
exclude:
- "**/*.test.*"
- "**/debug/**"
# Maximum function length
- rule: max-function-length
severity: warning
max_lines: 50
Schritt 3: Quality-Gate-Ergebnisse interpretieren¶
Passierendes Tor¶
â
Quality Gate PASSED
Quality Score: A (95/100)
Vulnerabilities: 0 Critical, 0 High, 1 Medium, 2 Low
Test Coverage: 87% (target: 80%)
Style Issues: 0 (auto-fixed: 3)
Performance: No issues detected
Dependencies: All up to date
â Ready for Human Review
Fehlerhaftes Tor¶
â Quality Gate FAILED
Quality Score: C (72/100)
Vulnerabilities: 1 High (SQL injection risk in line 42)
Test Coverage: 65% (target: 80%)
Style Issues: 12 (auto-fixed: 8, remaining: 4)
Performance: 1 warning (N+1 query in getUserOrders)
Dependencies: 2 vulnerable packages found
â Auto-fixing (attempt 1 of 2)
Nach der automatischen Korrektur¶
â
Quality Gate PASSED (after auto-fix)
Quality Score: B (85/100) â improved from C
Vulnerabilities: 0 Critical, 0 High â SQL injection fixed
Test Coverage: 82% â improved from 65%
Style Issues: 0 â all auto-fixed
Performance: 1 warning remains (manual review needed)
Dependencies: 2 packages updated
â Ready for Human Review
Schritt 4: Behandeln Sie Quality-Gate-Fehler¶
Wenn das Gate nach allen Wiederholungsversuchen fehlschlÀgt:
- Der Code ist zur manuellen ĂberprĂŒfung markiert
- Ihr leitender Architekt erhÀlt einen detaillierten Bericht
- Der Architekt behebt die verbleibenden Probleme
- Code wird erneut ĂŒber das Gate ĂŒbermittelt
- Nach dem Bestehen wird die PR erstellt
HĂ€ufige FehlergrĂŒnde¶
| Fehler | Typische Ursache | Auflösung |
|---|---|---|
| Geringe Testabdeckung | Komplexe Verzweigungslogik | Architekt fĂŒgt Randfalltests hinzu |
| Hohe Verwundbarkeit | Unsichere Eingabeverarbeitung | Architekt fĂŒhrt Desinfektion durch |
| StilverstöĂe | Nicht standardmĂ€Ăige Muster | Automatische Korrektur oder manuelle Formatierung |
| Leistungsprobleme | Ineffiziente Algorithmen | Architekt optimiert den Code |
| AbhÀngigkeitsschwachstellen | Veraltete Pakete | Architect aktualisiert AbhÀngigkeiten |
Best Practices¶
Geeignete Schwellenwerte festlegen¶
- Strikt beginnen: Höhere Schwellenwerte erkennen mehr Probleme frĂŒhzeitig
- Anpassung je nach Projekt: Kritische Systeme benötigen strengere Regeln
- Geschwindigkeit vs. QualitÀt ausbalancieren: Zu streng = langsamere Lieferung
- Monatliche ĂberprĂŒfung: Passen Sie die Schwellenwerte basierend auf Fehlermustern an
Security-First-Ansatz¶
- Deaktivieren Sie niemals das Scannen auf Schwachstellen
- Immer bei kritischen und hohen Schwachstellen blockieren
- ĂberprĂŒfen Sie wöchentlich mittlere Schwachstellen
- AbhĂ€ngigkeitsprĂŒfungen automatisiert halten
TestqualitĂ€t¶
- Konzentrieren Sie sich auf eine sinnvolle Abdeckung: 80 % des wichtigen Codes > 100 % von allem
- RandfÀlle einbeziehen: Nulleingaben, Grenzwerte, Fehlerpfade
- Integrationspunkte testen: API-Aufrufe, Datenbankabfragen, externe Dienste
- ĂberprĂŒfen Sie automatisch generierte Tests: Stellen Sie sicher, dass sie echtes Verhalten testen, nicht nur Codepfade
Was kommt als nĂ€chstes?¶
- Erfahren Sie mehr ĂŒber Token-Nutzung ĂŒberwachen
- Entdecken Sie Die KI-Fabrik verstehen
- Lesen Sie mehr ĂŒber Private AI Gateway
Brauchen Sie Hilfe?¶
- Dokumentation: docs.4geeks.io
- Discord: Discord
- Support: VerfĂŒgbar ĂŒber das Konsolen-Dashboard
Noch Fragen? Get support or explore tutorials