Ich verwende Bullseye Code Coverage Tool. Es ist großartig. Ich bin daran interessiert zu wissen, dass es intern funktioniert. Wie funktioniert es tatsächlich?
Antwort
Dies ist eine werkzeugunabhängige Frage. Alle funktionieren auf die gleiche Weise: Sie instrumentieren den Code Ihres Systems. Jedes Mal, wenn eine Zeile oder ein Zweig Ihres Codes zur Laufzeit besucht wird, speichert das Tool diese Informationen zwischen. Schließlich wird die Anzahl der besuchten Zeilen (oder Zweige) durch die Gesamtzahl der Zeilen (oder Zweige) geteilt. Dies erfolgt im Rahmen einer einzelnen Klasse / Datei, eines Pakets, von Paketunterbäumen und einer gesamten Anwendung.
Die Codeinstrumentierung kann jedoch werkzeug- und sprachspezifisch sein.
Hier finden Sie weitere Informationen, Links und Forschungsarbeiten, wie Sie das Tool zur Codeabdeckung selbst implementieren und wie die Instrumentierung in Beispieltools erfolgt.
Kommentare
- Es ist nützlich, zwischen Tools zu unterscheiden, die den Quellcode instrumentieren, und solchen, die Bytecode instrumentieren. ' kann letzteres für konventionell kompilierte Sprachen so gut wie nicht erhalten.