Cómo verificar enlaces rotos en la página web usando Selenium Webdriver C #

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.

  [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
     }

 }

  1. Primero, recupere todos los enlaces en la página web y guárdelos como colección
  2. Iterar la colección de enlaces y hacer una solicitud web contra el enlace
  3. Verifique la respuesta de la solicitud web para el éxito (200)

PD: utilice la solicitud web parallel.foreach y asyc para un mejor rendimiento.

La mejor manera de verificar esto es usar la función JavaScriptExecutor para verificar dos parámetros:

1. Completo: esto es para IE.

2. La altura de la imagen no está indefinida.

Publicaré una explicación completa una vez que pueda acceder a una computadora portátil (en un dispositivo móvil)

Siga este enlace a continuación solo para todos los enlaces rotos en una página web
http://techlearn.in/content/find