Sådan klikker du på billedet Selenium Webdriver
Adgang til billedlinks
Billedlinks er links på websider repræsenteret af et billede, som, når der klikkes på dem, navigerer til et andet vindue eller en anden side.
Da de er billeder, kan vi ikke bruge metoderne By.linkText() og By.partialLinkText() fordi billedlinks dybest set ikke har nogen linktekster overhovedet.
I dette tilfælde bør vi ty til at bruge enten By.cssSelector eller By.xpath. Den første metode er mere foretrukket på grund af dens enkelhed.
I eksemplet nedenfor får vi adgang til "Facebook"-logoet øverst til venstre på Facebooks side for gendannelse af adgangskode.
Vi vil bruge By.cssSelector og elementets "title"-attribut for at få adgang til billedlinket. Og så vil vi verificere, om vi er ført til Facebooks hjemmeside.
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(); } }
Resultat
Konklusion
Det hele handler om at klikke på billeder. Adgang til billedlink sker ved hjælp af By.cssSelector()