Necesitas encontrar TODOS los enlaces. El [FindsBy]
que está utilizando devuelve un enlace, no la lista. Primero encuentra una colección. Consulte a los especialistas en pruebas de Selenium para el desarrollo de marcos de automatización
[FindsBy (How = How.TagName, Using = "a")] public IList LinkElements {get; conjunto; }
Editar
Solo StaleElement
, simplemente haciendo clic en una lista de WebElements
posiblemente devolverá la excepción de referencia StaleElement
debido a la actualización del DOM
. Use for loop
y encuentre el elemento runtime.
- ¿Cómo puedo construir código JavaScript escalable?
- Cómo hacer un sitio web sin otro sitio web / plataforma
- ¿Cuál es la mejor y la forma más fácil de actualizar los contenidos de la página web sin actualizarla?
- ¿Por qué ReactJS es tan popular a pesar de no ser muy legible (JS y HTML mezclado, clases 'enormes')?
- ¿Cuáles son las diferencias entre DOM y AJAX?
[FindsBy (How = How.TagName, Using = "a")] public static IList LinkElements {get; conjunto; } LoopLink privado vacío () { int count = LinkElements.Count; para (int i = 0; i <cuenta; i ++) { Driver.FindElements (By.TagName ("a")) [i] .Click (); // algunas formas de volver a la página anterior } }