Como clicar na imagem em Selenium Driver da Web

Acessando links de imagens

Links de imagem são links em páginas da web representados por uma imagem que, quando clicada, navega para uma janela ou página diferente.

Como são imagens, não podemos usar os métodos By.linkText() e By.partialLinkText() porque os links de imagens basicamente não possuem nenhum texto de link.

Neste caso, devemos recorrer ao uso de By.cssSelector ou By.xpath. O primeiro método é mais preferido devido à sua simplicidade.

No exemplo abaixo, acessaremos o logotipo “Facebook” na parte superior esquerda da página de recuperação de senha do Facebook.

Acessando links de imagens

Usaremos By.cssSelector e o atributo “title” do elemento para acessar o link da imagem. E então verificaremos se somos levados à página inicial do 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

Clique na imagem em Selenium Driver da Web

Conclusão

Isso tudo é para clicar em imagens. O acesso ao link da imagem é feito usando By.cssSelector()