Haga clic elemento por elemento en la lista
Frecuentes
Visto 278 equipos
2
¿Cómo puedo hacer clic elemento por elemento en la lista donde el localizador se ve así:
id=${NameFirst.replace(" ", ""}_${NameLast.replace(" ", "")}
*Keywords*
| Get all first and last names
| | ${Name} | Query Master Database
| | ... |
| | [Return] | ${Name[0][0]} | ${Name[0][1]}
*Test Case*
| Click element by element
| | :FOR | ${NameElement} | IN | @{NameElementList}
| | ${NameFirst} | ${NameLast}= | Get all first and last names
| | set suite variable | ${NameFirst}
| | set suite variable | ${NameLast}
| | Click Element | id=${NameFirst.replace(" ", ""}_${NameLast.replace(" ", "")}
Cuando ejecuto el caso de prueba, solo hace clic en el primer elemento
INFO ${Name} = [['AAA', 'BBB'], ['CCC', 'DDD']]
INFO ${NameFirst} = AAA
INFO ${NameLast} = BBB
1 Respuestas
0
Primero, parece que su bucle no está formateado correctamente. El cuerpo del bucle necesita un nivel adicional de sangría. El siguiente ejemplo ilustra:
*Test Case*
| Click element by element
| | :FOR | ${NameElement} | IN | @{NameElementList}
| | | ${NameFirst} | ${NameLast}= | Get all first and last names
| | | set suite variable | ${NameFirst}
| | | set suite variable | ${NameLast}
| | | Click Element | id=${NameFirst.replace(" ", ""}_${NameLast.replace(" ", "")}
Aquí, las líneas que pertenecen a forloop deben espaciarse dejando una celda. AFP
contestado el 15 de mayo de 14 a las 16:05
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas python selenium selenium-webdriver robotframework or haz tu propia pregunta.
No estas usando
${NameElement}
en cualquier parte del bucle FOR, lo que hace que el bucle sea prácticamente inútil. - Harri