Git-Metadaten bereitstellen
Steuern Sie, wie Axe Watcher Git-Informationen für Ihre Testläufe sammelt
Axe Watcher verknüpft Barrierefreiheitsergebnisse mit dem getesteten Git-Commit und ermöglicht es Ihnen, Probleme über Branches und Builds im Axe Developer Hub nachzuverfolgen. Standardmäßig sammelt Watcher diese Informationen automatisch über das lokale Git-Binary. Sie können die Sammlung auch vollständig deaktivieren oder die Metadaten selbst bereitstellen.
Automatische Sammlung (Standard)
Wenn keine git-Konfiguration bereitgestellt wird, erkennt Watcher automatisch den aktuellen Branch, die Commit-SHA, den Autor und andere Git-Felder aus dem lokalen Repository. Es ist keine zusätzliche Konfiguration erforderlich.
Deaktivierung der Git-Sammlung
Wenn in Ihrer Umgebung kein Git-Binary vorhanden ist oder wenn Sie keine Git-Daten mit einem Testlauf verknüpfen möchten, können Sie die Sammlung vollständig deaktivieren.
(JavaScript/TypeScript) Setzen Sie die git-Eigenschaft auf false in Ihrem AxeConfiguration:
axe: {
apiKey: process.env.AXE_DEVELOPER_HUB_API_KEY,
projectId: process.env.AXE_DEVELOPER_HUB_PROJECT_ID,
git: false
}(Java) Rufen Sie setGit(false) auf Ihrem AxeWatcherOptions auf:
AxeWatcherOptions options = new AxeWatcherOptions()
.setApiKey(System.getenv("AXE_DEVELOPER_HUB_API_KEY"))
.setProjectId(System.getenv("AXE_DEVELOPER_HUB_PROJECT_ID"))
.setGit(false);Bereitstellung expliziter Metadaten
Einige CI-Einrichtungen führen Tests in einem speziellen QA-Repository durch, das vom getesteten Repository getrennt ist. In diesen Fällen würde die automatische Erkennung Metadaten aus dem QA-Repository anstatt aus dem Code-Repository sammeln, was zu irreführenden Ergebnissen im Axe Developer Hub führt. Sie müssen die korrekten Metadaten explizit bereitstellen.
Explizite Metadaten sind auch nützlich, wenn die automatische Erkennung unzuverlässig ist, beispielsweise bei flachen Klonen oder wenn sich das Repository in einem separaten HEAD-Zustand befindet.
Wenn explizite Metadaten bereitgestellt werden, wird die automatische Erkennung für diesen Testlauf vollständig übersprungen. Jedes Feld, das Sie weglassen, wird als null übertragen.
Die folgenden Felder sind verfügbar. branch, commitSha und url sind die 'gitful'-Felder: Eine Sitzung, die ohne alle drei eingereicht wird, wird als gitlos aufgezeichnet und gespeichert, aber Axe Developer Hub wechselt zur 'gitless'-Sitzungsansicht, in der Zweig- und Committedaten aus vorherigen Sitzungen nicht sichtbar sind. Das Einreichen einer nachfolgenden Sitzung mit allen drei Feldern stellt die 'gitful'-Ansicht wieder her. Wenn nur eines oder zwei der drei vorhanden sind, verwirft Axe Watcher alle 'gitful'-Felder, zeichnet die Sitzung als 'gitless' auf und fügt eine Warnung in der Antwort hinzu. Die verbleibenden Felder sind optional.
| Feld (JavaScript/TypeScript) | Methode (Java) | Vollständiges Git | Beschreibung |
|---|---|---|---|
branch |
setBranch() |
ja | Aktueller Branch-Name |
commitAuthor |
setCommitAuthor() |
nein | Anzeigename des Autors. Wenn weggelassen, erscheint der Autor im Axe Developer Hub als nicht verfügbar. |
commitEmail |
setCommitEmail() |
nein | E-Mail-Adresse des Autors. |
commitMessage |
setCommitMessage() |
nein | Volle Commit-Nachricht. Wenn weggelassen, erscheint die Commit-Nachricht im Axe Developer Hub als nicht verfügbar. |
commitSha |
setCommitSha() |
ja | Vollständiger oder abgekürzter Commit-Hash |
defaultBranch |
setDefaultBranch() |
nein | Standard-Zweigname (z. B. main). Ohne dieses Feld kann Axe Developer Hub nicht identifizieren, welcher Zweig der Standardzweig ist, sodass Vergleiche von Feature-Zweigen mit dem Standardzweig nicht verfügbar sein werden. |
isDirty |
setIsDirty() |
nein | true, wenn es ungespeicherte Änderungen gibt |
tag |
setTag() |
nein | Aktuelles Tag (z. B. v1.2.3) |
url |
setUrl() |
ja | Remote-URL des Repositories |
(JavaScript/TypeScript) Übergeben Sie ein GitConfig-Objekt an die git-Eigenschaft in Ihrem AxeConfiguration. Die spezifischen Namen der Umgebungsvariablen hängen von Ihrer CI-Plattform ab:
axe: {
apiKey: process.env.AXE_DEVELOPER_HUB_API_KEY,
projectId: process.env.AXE_DEVELOPER_HUB_PROJECT_ID,
git: {
commitSha: process.env.GIT_COMMIT,
branch: process.env.GIT_BRANCH,
url: process.env.GIT_URL,
commitAuthor: process.env.GIT_AUTHOR_NAME,
commitEmail: process.env.GIT_AUTHOR_EMAIL,
commitMessage: process.env.GIT_COMMIT_MESSAGE,
defaultBranch: 'main'
}
}(Java) Erstellen Sie eine AxeWatcherGitInfo-Instanz und übergeben Sie sie an setGitInfo() auf Ihrem AxeWatcherOptions:
AxeWatcherOptions options = new AxeWatcherOptions()
.setApiKey(System.getenv("AXE_DEVELOPER_HUB_API_KEY"))
.setProjectId(System.getenv("AXE_DEVELOPER_HUB_PROJECT_ID"))
.setGitInfo(new AxeWatcherGitInfo()
.setCommitSha(System.getenv("GIT_COMMIT"))
.setBranch(System.getenv("GIT_BRANCH"))
.setUrl(System.getenv("GIT_URL"))
.setCommitAuthor(System.getenv("GIT_AUTHOR_NAME"))
.setCommitEmail(System.getenv("GIT_AUTHOR_EMAIL"))
.setCommitMessage(System.getenv("GIT_COMMIT_MESSAGE"))
.setDefaultBranch("main"));Siehe auch
- (JavaScript/TypeScript)
AxeConfiguration.git - (Java)
AxeWatcherOptions.setGitInfo() - (Java)
AxeWatcherGitInfo - Verwendung von Axe Watcher in Continuous Integration (CI) Umgebungen
