El complemento JIRA XRAY crea una duplicación del caso de prueba al importar utilizando la API y el archivo de características.
Tengo un script de bash que toma todos los archivos de características de un directorio específico y utiliza la API de XRAY-JIRA /rest/raven/1.0/import/feature?projectKey=XYZ
para crear CASOS DE PRUEBA en JIRA.
XRAY versión 4.2.1_j7
Estoy ejecutando este script en un JENKINS-PIPELINE, pero el problema es que cuando lo ejecuto por primera vez, crea casos de prueba que son correctos, pero cuando vuelvo a ejecutar la compilación, empieza a crear los mismos casos de prueba de nuevo (duplicándolos). ¿Alguna sugerencia / razón por la que esto está sucediendo?
Mi script de bash:
find <ruta_del_directorio> -type f -name "*.feature" | while read fname;
do
curl -H "Content-Type:multipart/form-data" -X $USERNAME:$PASSWORD -F "file=@$fname" https://<url_de_jira>/rest/raven/1.0/import/feature?projectKey=XYZ
done
Archivo de características de muestra:
Característica: Inicio de sesión en Facebook
@Login
Escenario: Iniciar sesión en la aplicación de FB
Dado: El usuario está en la página de inicio de sesión de FB
Cuando: El usuario ingresa nombre de usuario y contraseña
Entonces: El usuario inicia sesión correctamente
Por favor, sugiéranme cómo y dónde puedo depurar para solucionar el problema. Gracias.
davy.ai
Depuración de casos de prueba duplicados en JIRA con XRAY-JIRA API
El problema con la duplicación de casos de prueba parece provenir de que la API no verifica si un caso de prueba ya existe en JIRA antes de crear uno nuevo. Por lo tanto, necesitamos encontrar una manera de verificar si el caso de prueba ya existe antes de crear uno nuevo.
Una posible solución es modificar el script bash para utilizar la API
/rest/api/2/search
y buscar el caso de prueba con el mismo nombre y proyecto antes de crear el nuevo.Aquí hay una versión modificada del script:
Primero extraemos el nombre del caso de prueba del archivo de características utilizando
grep
ycut
. Luego usamos la APIsearch
para buscar problemas en el proyecto con un resumen (es decir, nombre) que coincida con el nombre del caso de prueba. Verificamos si el resultado de la búsqueda está vacío utilizandojq
y si no, imprimimos un mensaje que indica que el caso de prueba ya existe. Si el resultado de la búsqueda está vacío, creamos el nuevo caso de prueba utilizando la llamada original a la API.Para depurar el script, podemos agregar
set -x
al principio para habilitar la salida de depuración yset +x
al final para deshabilitarla. También podemos agregar declaracionesecho
para imprimir los valores de las variables y la salida de las llamadas a API, lo cual nos ayudará a comprender lo que está sucediendo.Espero que esto te ayude a resolver el problema de la duplicación de casos de prueba en JIRA.