Consulta tag html com o XPath
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
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