Haga clic en Imagen en Selenium controlador web

Acceder a enlaces de imรกgenes

Los enlaces de imรกgenes son enlaces en pรกginas web representadas por una imagen que, al hacer clic en ella, navega a una ventana o pรกgina diferente.

Como son imรกgenes, no podemos usar los mรฉtodos By.linkText() y By.partialLinkText() porque los enlaces de imรกgenes bรกsicamente no tienen ningรบn texto de enlace.

En este caso, deberรญamos recurrir al uso de By.cssSelector o By.xpath. El primer mรฉtodo es mรกs preferido debido a su simplicidad.

En el siguiente ejemplo, accederemos al logotipo de "Facebook" en la parte superior izquierda de la pรกgina de recuperaciรณn de contraseรฑa de Facebook.

Acceder a enlaces de imรกgenes

Usaremos By.cssSelector y el atributo "tรญtulo" del elemento para acceder al enlace de la imagen. Y luego verificaremos si somos redirigidos a la pรกgina de inicio de Facebook.

package newproject;
import org.openqa.selenium.By;		
import org.openqa.selenium.WebDriver;		
import org.openqa.selenium.chrome.ChromeDriver;		

public class MyClass {				
    		
    public static void main(String[] args) {									
        String baseUrl = "https://www.facebook.com/login/identify?ctx=recover";					
        System.setProperty("webdriver.chrome.driver","G:\\chromedriver.exe");					
        WebDriver driver = new ChromeDriver();					
        		
        driver.get(baseUrl);					
        //click on the "Facebook" logo on the upper left portion		
			driver.findElement(By.cssSelector("a[title=\"Go to Facebook home\"]")).click();					

			//verify that we are now back on Facebook's homepage		
			if (driver.getTitle().equals("Facebook - log in or sign up")) {							
            System.out.println("We are back at Facebook's homepage");					
        } else {			
            System.out.println("We are NOT in Facebook's homepage");					
        }		
				driver.close();		

    }		
}

Resultado

Haga clic en Imagen en Selenium controlador web

Conclusiรณn

Todo esto es para hacer clic en imรกgenes. El acceso al enlace de la imagen se realiza mediante By.cssSelector()

Resumir este post con: