Wir haben bei Theodo Quality durch den "3S -Qualitätsfaktor" definiert, den der Code:
Wir sind der Meinung, dass ein Team Folgendes benötigt, um einen Code von hoher Qualität liefern zu können:
Das Ziel von Tyrion ist es, Ihnen am letzten Punkt zu helfen, "Qualität zu messen".
Wir haben technische Schulden als jedes Code oder jede Architektur definiert, die Qualität verhindert. Durch verschiedene Experimente sahen wir, dass es bei der Überwachung der Entwicklung der technischen Schulden eher verhindert wurde, dass sie zunimmt. Wir haben in der Vergangenheit verschiedene Möglichkeiten zum Verwalten und Messen versucht (Trello-Karten, Google Docs, Post-It, ..), aber wir haben nie eine schmerzlose Lösung gefunden, die es uns ermöglicht:
Also haben wir Tyrion geschaffen. Sie können jetzt:
Sie müssen Tyrion mit dem Knoten V12 oder V14 verwenden. Derzeit arbeitet es nicht mit der überlegenen Version, hauptsächlich, weil Probleme mit dem Hauptwerkzeug bei Verwendung: Knotengit.
Installieren Sie Tyrion weltweit: npm i -g tyrionl
(ja, tyrionl
mit einem endgültigen l
, es ist kein Tippfehler).
Führen Sie tyrion
mit den folgenden Optionen aus
-p, --path [scanDirectory] The path of the directory you want to analyse
-e, --evolution [days] Get the evolution of the debt since X days
-b, --branch [days] Specify the branch used for the evolution analysis. (Default to master)
-n, --nobrowser [browser] Don't open the report after being generated
-c, --csv [csv] export the debt data into a csv file
-d, --devs [devs] Get information about who is contributing the most to quality (Beta)
-h, --help output usage information
Beispiel:
tyrion -p ./src -c
um den aktuellen Schuldenwert zu erhalten und einen CSV -Bericht zu erstellentyrion --evolution 28 -p .
die Entwicklung der Schulden während 28 Tagen ab dem letzten Commit zu erhalten.tyrion --evolution 28 -b prod -p .
Die Entwicklung der Schulden während 28 Tagen ab dem letzten Commit der Prod -Zweigstelle zu erhalten. Sie können entweder das folgende Schulden -Tag für dasselbe Ergebnis verwenden: @debt
, TODO
, FIXME
.
Tyrion analysiert die Dateien, die nach Kommentaren suchen, die der folgenden Konvention folgen:
/**
* @debt DEBT_TYPE:SUB_TYPE
*/
Für die folgenden Schuldenstypen gibt es eine Standardpunktzahl:
Sie müssen keinen sub_type angeben, daher kann ein minimales Beispiel sein:
/**
* @debt quality
*/
Sie können einen Kommentar hinzufügen, um weitere Details zum Schuldenartikel zu erhalten, indem Sie dieser Konvention folgen:
/**
* @debt DEBT_TYPE:SUB_TYPE "Author: comment"
*/
Ein vollständiges Beispiel könnte sein:
/**
* @debt security:sql-injection "Maximet: The request is not escaped when being called from the command"
*/
Der Parser sucht nach allen Zeilen, die '@Debbt' enthalten und entweder mit *
oder #
, die die meisten Web -Programmiersprachen abdecken sollten.
Sie können die Standardpreise von Schuldenartikeln überschreiben, indem Sie eine .tyrion-config.json
Datei im Stammverzeichnis Ihres Projekts erstellen. Sie können sogar Ihre eigenen Typen erstellen. Hier ist der Standard:
{
"pricer": {
"bug": 100,
"architecture": 100,
"bugRisk": 5,
"security": 100,
"securityRisk": 10,
"quality": 5,
"test": 5,
"doc": 3,
"ci": 30,
"deploy": 10,
"devEnv": 10,
"outdated": 5
},
"standard": 100,
"ignorePath": [
"node_modules",
"README.md"
],
"debtTags": [
"@debt",
"TODO",
"FIXME"
]
}
Sie können einige Dateien auch als "Joconde" einer Datei markieren, die perfekt dem Standard der Codequalität folgt. Sie können entweder das folgende Tag für dasselbe Ergebnis verwenden: @best
, @standard
, JOCONDE
.
Beispiel: // JOCONDE React:component "The standard can be find here: http....."
Sie können Dateien ignorieren, die bestimmte Zeichenfolgen enthalten, indem Sie die Option "ignorePath"
in der Konfigurationsdatei verwenden:
"ignorePath": [
"node_modules",
"README.md"
]
Sie können die Ausfallschulden -Tags ändern, mit denen festgestellt wird, welche Kommentarlinie als Schuldenkommentar von Tyrion betrachtet werden soll. Um dies zu tun, überschreiben Sie den debtTags
Eintrag in .tyrion-config.json
:
"debtTags": [
"@debt",
"TODO",
"FIXME"
]
Diese Funktion ist nicht mehr verfügbar, da sie nicht verwendet wurde.
Sie können das Ergebnis mit jeder gewünschten Art von Schulden mit der Option filtern --filter
. Es wird den Typ und die Zeichenfolge vergleichen, die Sie nach dem Filter als Argument verabschieden.
Beispiel: tyrion -p ./src --filter bug