Hoe te klikken op afbeelding in Selenium Webdriver

Inhoudsopgave:

Anonim

Toegang tot afbeeldingslinks

Afbeeldingslinks zijn de links in webpagina's die worden weergegeven door een afbeelding die, wanneer erop wordt geklikt, naar een ander venster of een andere pagina leidt.

Omdat het afbeeldingen zijn, kunnen we de By.linkText () en By.partialLinkText () methoden niet gebruiken, omdat afbeeldingslinks in principe helemaal geen linkteksten bevatten.

In dit geval moeten we onze toevlucht nemen tot het gebruik van By.cssSelector of By.xpath. De eerste methode heeft meer de voorkeur vanwege zijn eenvoud.

In het onderstaande voorbeeld hebben we toegang tot het "Facebook" -logo linksboven op de pagina Wachtwoordherstel van Facebook.

We zullen By.cssSelector en het element "title" -attribuut gebruiken om toegang te krijgen tot de afbeeldingslink. En dan zullen we controleren of we naar de startpagina van Facebook worden geleid.

pakket nieuwproject;import org.openqa.selenium.By;importeer org.openqa.selenium.WebDriver;importeer org.openqa.selenium.chrome.ChromeDriver;openbare klas 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-stuurprogramma = nieuwe ChromeDriver ();driver.get (baseUrl);// klik op het "Facebook" -logo linksbovendriver.findElement (By.cssSelector ("a [title = \" Ga naar Facebook-startpagina \ "]")). klik ();// controleer of we nu terug zijn op de startpagina van Facebookif (driver.getTitle (). equals ("Facebook - log in of registreer")) {System.out.println ("We zijn terug op de startpagina van Facebook");} anders {System.out.println ("We staan ​​NIET op de startpagina van Facebook");​driver.close ();​​

Resultaat

Gevolgtrekking:

Dit is allemaal door op afbeeldingen te klikken. Toegang krijgen tot de afbeeldingslink wordt gedaan met By.cssSelector ()