Proporcionar metadatos de Git
Controla cómo Axe Watcher recopila la información de Git para tus ejecuciones de prueba
Axe Watcher vincula los resultados de accesibilidad al commit de Git que se ha probado, permitiéndote rastrear problemas a través de ramas y compilaciones en Axe Developer Hub. Por defecto, Watcher recopila esta información automáticamente usando el binario local de Git. También puedes desactivar la recopilación por completo o suministrar los metadatos tú mismo.
Recopilación automática (por defecto)
Cuando no se proporciona la configuración de git, Watcher detecta automáticamente la rama actual, el SHA del commit, el autor y otros campos de Git desde el repositorio local. No se requiere configuración adicional.
Desactivación de la recopilación de Git
Si tu entorno no tiene un binario de Git, o si no deseas que los datos de Git estén asociados con una ejecución de prueba, puedes desactivar la recopilación por completo.
(JavaScript/TypeScript) Establece la propiedad git en false en tu AxeConfiguration:
axe: {
apiKey: process.env.AXE_DEVELOPER_HUB_API_KEY,
projectId: process.env.AXE_DEVELOPER_HUB_PROJECT_ID,
git: false
}(Java) Llama a setGit(false) en tu AxeWatcherOptions:
AxeWatcherOptions options = new AxeWatcherOptions()
.setApiKey(System.getenv("AXE_DEVELOPER_HUB_API_KEY"))
.setProjectId(System.getenv("AXE_DEVELOPER_HUB_PROJECT_ID"))
.setGit(false);Proporcionar metadatos explícitos
Algunas configuraciones de CI ejecutan pruebas en un repositorio de control de calidad dedicado que está separado del repositorio bajo prueba. En esos casos, la detección automática recopilaría metadatos del repositorio de control de calidad en lugar del repositorio de código, produciendo resultados engañosos en Axe Developer Hub. Debes proporcionar los metadatos correctos explícitamente.
Los metadatos explícitos también son útiles cuando la detección automática es poco fiable, por ejemplo, en clones superficiales o cuando el repositorio está en un estado de HEAD separado.
Cuando se proporciona metadata explícita, se omite completamente la autodetección para esa ejecución de prueba. Cualquier campo que omitas se transmite como null.
Los siguientes campos están disponibles. branch, commitSha y url son los campos gitful: una sesión enviada sin los tres se registra como sin git y se guarda, pero Axe Developer Hub cambia a la vista de sesión gitless, donde no estarán visibles el historial de ramas y commits de sesiones anteriores. Enviar una sesión posterior con los tres campos restaura la vista gitful. Si solo están presentes uno o dos de los tres, Axe Watcher elimina todos los campos gitful, registra la sesión como gitless e incluye una advertencia en la respuesta. Los campos restantes son opcionales.
| Campo (JavaScript/TypeScript) | Método (Java) | Completo de Git | Descripción |
|---|---|---|---|
branch |
setBranch() |
sí | Nombre de la rama actual |
commitAuthor |
setCommitAuthor() |
no | Nombre para mostrar del autor. Si no se proporciona, el autor aparecerá como no disponible en Axe Developer Hub. |
commitEmail |
setCommitEmail() |
no | Dirección de correo electrónico del autor. |
commitMessage |
setCommitMessage() |
no | Mensaje completo del commit. Si no se proporciona, el mensaje del commit aparecerá como no disponible en Axe Developer Hub. |
commitSha |
setCommitSha() |
sí | Hash completo o abreviado del commit |
defaultBranch |
setDefaultBranch() |
no | Nombre de la rama predeterminada (por ejemplo, main). Sin este campo, Axe Developer Hub no puede identificar cuál es la rama predeterminada, por lo que no estarán disponibles las comparaciones de ramas de características contra la rama predeterminada. |
isDirty |
setIsDirty() |
no | true si hay cambios no confirmados |
tag |
setTag() |
no | Etiqueta actual (por ejemplo, v1.2.3) |
url |
setUrl() |
sí | URL remota del repositorio |
(JavaScript/TypeScript) Pasa un objeto GitConfig a la propiedad git en tu AxeConfiguration. Los nombres específicos de las variables de entorno dependen de tu plataforma CI:
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) Crea una instancia de AxeWatcherGitInfo y pásala a setGitInfo() en tu 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"));Consulte también
- (JavaScript/TypeScript)
AxeConfiguration.git - (Java)
AxeWatcherOptions.setGitInfo() - (Java)
AxeWatcherGitInfo - Usar Axe Watcher en entornos de Integración Continua (CI)
