Kapitel 20. Statische Analyse

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

Bevor ich zum Testen komme, möchte ich zunächst über die statische Analyse sprechen. Bei der statischen Analyse handelt es sich um eine Reihe von Werkzeugen, die deine Codebasis auf mögliche Fehler oder Unstimmigkeiten untersuchen. Sie ist eine große Hilfe, um häufige Fehler zu finden. Tatsächlich hast du bereits mit einem statischen Analysewerkzeug gearbeitet: mypy. Mypy (und andere Typechecker) untersuchen deine Codebasis und finden Tippfehler. Andere statische Analysewerkzeuge suchen nach anderen Fehlerarten. In diesem Kapitel führe ich dich durch gängige statische Analysetools für Linting, Komplexitätsprüfung und Sicherheitsscans.

Linting

Die erste Klasse von statischen Analysewerkzeugen, die ich dir vorstellen werde, heißt Linter. Linters suchen nach häufigen Programmierfehlern und Stilverletzungen in deiner Codebasis. Sie haben ihren Namen von dem ursprünglichen Linter: einem Programm namens lint, das C-Programme auf häufige Fehler überprüft hat. Es suchte nach "unscharfer" Logik und versuchte, diese Unschärfe zu beseitigen (daher Linting). In Python ist der häufigste Linter, dem du begegnen wirst, Pylint. Pylint wird verwendet, um auf eine Vielzahl von Fehlern zu prüfen:

  • Bestimmte Verstöße gegen den Stil des PEP 8 Python Style Guide

  • Toter Code, der nicht erreichbar ist (z. B. Code nach einer Return-Anweisung) ...

Get Robustes Python now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.