Pergunta

Eu estou escrevendo o teste de selênio.

Eu tenho um rótulo lá "Designer Assign" ea caixa de seleção seguido logo após o rótulo. Unfortunetely, marque a caixa tem o id dinâmico e não posso consultá-lo por id ou qualquer outro que atributo.

Posso construir a consulta XPath que retorna "Primeiro selecione a tag depois do texto 'Atribuir Designer'"?

PS. suportes de selênio única XPath 1.0

Foi útil?

Solução

Este seria algo como:

//label[text() = 'Assign Designer']/following-sibling::select[1]

Note que:

  • A taquigrafia // é bastante ineficiente, porque faz com que um documento de ampla varredura. Se você pode ser mais específico sobre a posição do rótulo, eu recomendo fazê-lo. Se o documento for pequeno, no entanto, este não será um problema.
  • Desde que eu não sei muito sobre selênio, eu usei "rótulo". Se não é um <label>, você deve usar o nome do elemento real, é claro. ; -)
  • se esqueça de incluir um predicado posição ([1], neste caso) sempre que você usar um eixo como "following-sibling". É facilmente esquecido e se for, as suas expressões podem produzir resultados inesperados.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top