Qaf: StepNotFoundException se lanza incluso cuando se implementa el paso

Creado en 18 sept. 2019  ·  8Comentarios  ·  Fuente: qmetry/qaf

Versión QAF: 2.1.14

Nota: solo se admite la última versión

Pasos para reproducir

Este es un problema intermitente y no parece haber un patrón.

Comportamiento esperado

El paso debería ejecutarse.

Comportamiento real

Se lanza StepNotFoundException

¿El problema se puede reproducir en el corredor?

  • [] QAS
  • [] Maven
  • [] Gradle
  • [] Hormiga
  • [x] Eclipse
help wanted

Comentario más útil

¿puede proporcionar más información?
Aún basado en la excepción, hay 2 posibilidades:
1) Parece que los nombres de los métodos están duplicados en Java y tienen una descripción de BDD diferente. Asegúrese de que los nombres de los métodos sean diferentes en java.
2) El método Java no existe / creado y se llama desde BDD.

Todos 8 comentarios

¿puede proporcionar más información?
Aún basado en la excepción, hay 2 posibilidades:
1) Parece que los nombres de los métodos están duplicados en Java y tienen una descripción de BDD diferente. Asegúrese de que los nombres de los métodos sean diferentes en java.
2) El método Java no existe / creado y se llama desde BDD.

Hola Ravi,

Primero verifique con la propiedad step.provider.pkg , asegúrese de que apunte al paquete correcto.

Si eso es correcto, intente proporcionar stepName exclusivo a su implementación de pasos.

@QAFTestStep(description="user logins with {username} and {password}",stepName="user login with username and password")
public void login(String username,String password){
}

¿puede proporcionar más información?
Aún basado en la excepción, hay 2 posibilidades:

1. It seems duplicate method names in java and having different BDD description. Make sure method names are different in java.

2. Java method not exist/created which is being called from BDD.

@mishalhshah Sí, como señaló. Estaba usando diferentes descripciones de pasos para 2 métodos sobrecargados. Gracias por informarnos sobre esta limitación en QAF.

Hola Ravi,

Primero verifique con la propiedad step.provider.pkg , asegúrese de que apunte al paquete correcto.

Si eso es correcto, intente proporcionar stepName exclusivo a su implementación de pasos.

@QAFTestStep(description="user logins with {username} and {password}",stepName="user login with username and password")
public void login(String username,String password){
}

¿Cuál es la diferencia entre "descripción" y "stepName"? En nuestros proyectos actuales, usamos "descripción" y funciona bien.

@mishalhshah ¿Los mismos nombres de métodos en diferentes clases también pueden crear problemas?

Gracias por la rápida respuesta @mishalhshah @amitbhoraniya y @ naeem-github

@mishalhshah ¿Los mismos nombres de métodos en diferentes clases también pueden crear problemas?

@raviguptasmarsh sí, los mismos nombres de métodos java sin un "StepName" único en QAFTestStep crearán un problema.
Entonces, como lo sugiere @amitbhoraniya , agregue el nombre de paso único en la anotación QAFTestStep o proporcione los diferentes nombres de métodos java. avíseme después de aplicar cualquiera de las soluciones anteriores que funcione para usted o no.

stepName es un identificador único para QAFTestStep. Si no se proporciona stepName , QAF considera el nombre del método como stepName .
description se usa para llamar a teststep desde el archivo bdd.

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

APrem picture APrem  ·  7Comentarios

Rupak-66 picture Rupak-66  ·  12Comentarios

cjayswal picture cjayswal  ·  17Comentarios

Nandesh7 picture Nandesh7  ·  8Comentarios

BChitrakannan picture BChitrakannan  ·  9Comentarios