Git-metadata verstrekken
Bepaal hoe Axe Watcher Git-informatie verzamelt voor uw testuitvoeringen
Axe Watcher koppelt toegankelijkheidsresultaten aan de geteste Git-commit, zodat u problemen kunt volgen over takken en builds heen in Axe Developer Hub. Standaard verzamelt Watcher deze informatie automatisch met behulp van de lokale Git-binary. U kunt de verzameling ook volledig uitschakelen of de metadata zelf aanleveren.
Automatische Verzameling (Standaard)
Wanneer er geen git configuratie is opgegeven, detecteert Watcher automatisch de huidige tak, de commit SHA, de auteur en andere Git-velden uit de lokale repository. Geen extra configuratie is vereist.
Git-verzameling Uitschakelen
Als uw omgeving geen Git-binary heeft, of als u geen Git-gegevens aan een testuitvoering wilt koppelen, kunt u de verzameling volledig uitschakelen.
(JavaScript/TypeScript) Stel de git eigenschap in op false in uw AxeConfiguration:
axe: {
apiKey: process.env.AXE_DEVELOPER_HUB_API_KEY,
projectId: process.env.AXE_DEVELOPER_HUB_PROJECT_ID,
git: false
}(Java) Roep setGit(false) op je AxeWatcherOptions:
AxeWatcherOptions options = new AxeWatcherOptions()
.setApiKey(System.getenv("AXE_DEVELOPER_HUB_API_KEY"))
.setProjectId(System.getenv("AXE_DEVELOPER_HUB_PROJECT_ID"))
.setGit(false);Expliciete Metadata Verstrekken
Sommige CI-setups voeren tests uit in een aparte QA-repository die gescheiden is van de repository die getest wordt. In die gevallen zou auto-detectie metadata verzamelen van de QA-repository in plaats van de coderepository, wat misleidende resultaten zou opleveren in Axe Developer Hub. U moet dan de correcte metadata expliciet aanleveren.
Expliciete metadata is ook nuttig wanneer auto-detectie onbetrouwbaar is, bijvoorbeeld in ondiepe klonen of wanneer de repository in een gedetacheerde HEAD-status verkeert.
Wanneer expliciete metadata wordt verstrekt, wordt auto-detectie volledig overgeslagen voor die testuitvoering. Elk veld dat u niet opgeeft, wordt doorgegeven als null.
De volgende velden zijn beschikbaar. branch, commitShaen url zijn de gitvolle velden: een sessie zonder alle drie wordt vastgelegd als gitloos en opgeslagen, maar Axe Developer Hub schakelt over naar de gitloze sessieweergave, waar branch- en commithistorie van eerdere sessies niet zichtbaar zullen zijn. Het indienen van een volgende sessie met alle drie velden herstelt de gitvolle weergave. Als slechts één of twee van de drie aanwezig zijn, verwijdert Axe Watcher alle gitvolle velden, legt de sessie vast als gitloos, en voegt een waarschuwing toe aan de reactie. De overige velden zijn optioneel.
| Veld (JavaScript/TypeScript) | Methode (Java) | Gitvol | Beschrijving |
|---|---|---|---|
branch |
setBranch() |
ja | Huidige taknaam |
commitAuthor |
setCommitAuthor() |
nee | Weergavenaam van de auteur. Indien weggelaten, verschijnt de auteur als niet beschikbaar in Axe Developer Hub. |
commitEmail |
setCommitEmail() |
nee | E-mailadres van de auteur. |
commitMessage |
setCommitMessage() |
nee | Volledig commitbericht. Indien weggelaten, verschijnt het commitbericht als niet beschikbaar in Axe Developer Hub. |
commitSha |
setCommitSha() |
ja | Volledige of afgekorte commit hash |
defaultBranch |
setDefaultBranch() |
nee | Standaard taknaam (bijv. main). Zonder dit veld kan Axe Developer Hub niet identificeren welke tak de standaard is, dus zullen vergelijkingen tussen feature-takken en de standaardtak niet beschikbaar zijn. |
isDirty |
setIsDirty() |
nee | true als er niet-gecommitteerde wijzigingen zijn |
tag |
setTag() |
nee | Huidig tag (bijv. v1.2.3) |
url |
setUrl() |
ja | URL van de repository op afstand |
(JavaScript/TypeScript) Geef een GitConfig object door aan de git eigenschap in je AxeConfiguration. De specifieke namen van de omgevingsvariabelen zijn afhankelijk van je CI-platform:
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) Maak een AxeWatcherGitInfo instantie en geef deze door aan setGitInfo() op je 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"));Zie ook
- (JavaScript/TypeScript)
AxeConfiguration.git - (Java)
AxeWatcherOptions.setGitInfo() - (Java)
AxeWatcherGitInfo - Gebruik Axe Watcher in Continuous Integration (CI)-omgevingen
