Heim >Web-Frontend >CSS-Tutorial >Wie kann ich Elemente mit mehreren Klassennamen in Selenium finden?
Locator-Strategien für Elemente mit mehreren Klassennamen
Das Identifizieren von Webelementen mit mehreren Klassennamen kann eine Herausforderung darstellen, wenn bestimmte Locators verwendet werden, die einen erfordern einzelner, durch Leerzeichen getrennter Wert, wie etwa die @FindBy-Annotation in Java. Um dieses Problem zu lösen, ziehen Sie die folgenden alternativen Strategien in Betracht:
XPath-Locator
XPath-Ausdrücke bieten Flexibilität beim Abgleichen von Elementen basierend auf mehreren Attributen, einschließlich Klassennamen. Die folgenden Strategien können verwendet werden:
driver.findElement(By.xpath("//div[@class='value test']"));
driver.findElement(By.xpath("//div[contains(@class, 'value test')]"));
driver.findElement(By.xpath("//div[contains(@class, 'value') and contains(@class, 'test')]"));
CSS-Selektoren
CSS-Selektoren bieten eine weitere Option zum Auswählen von Elementen mit mehrere Klassennamen:
driver.findElement(By.cssSelector("div[class='value test']"));
driver.findElement(By.cssSelector("div[class*='value test']"));
driver.findElement(By.cssSelector("div.value.test"));
Zusätzliche Überlegungen
Achten Sie bei der Verwendung mehrerer Klassennamen auf Folgendes:
Das obige ist der detaillierte Inhalt vonWie kann ich Elemente mit mehreren Klassennamen in Selenium finden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!