- Selenium WebDriver 3 Practical Guide
- Unmesh Gundecha Satya Avasarala
- 195字
- 2021-08-13 16:08:08
The By.cssSelector() method
The By.cssSelector() method is similar to the By.xpath() method in its usage, but the difference is that it is slightly faster than the By.xpath locating mechanism. The following are the commonly used syntaxes to identify elements:
- To identify an element using the div element with the #flrs ID, we use the #flrs syntax
- To identify the child anchor element, we use the #flrs > a syntax, which will return the link element
- To identify the anchor element with its attribute, we use the #flrs > a[a[href="/intl/en/about.html"]] syntax
Let's try to modify the previous code, which uses the XPath locating mechanism to use the cssSelector mechanism:
@Test
public void byCssSelectorLocatorExample() {
WebElement searchBox =
driver.findElement(By.cssSelector("#search"));
searchBox.sendKeys("Bags");
searchBox.submit();
assertThat(driver.getTitle())
.isEqualTo("Search results for: 'Bags'");
}
The preceding code uses the By.cssSelector locating mechanism, which uses the css selector ID of the Search box.
Let's look at a slightly complex example. We will try to identify the About Us on the Homepage:
@Test
public void byCssSelectorLocatorComplexExample() {
WebElement aboutUs =
driver.findElement(By
.cssSelector("a[href*='/about-magento-demo-store/']"));
aboutUs.click();
assertThat(driver.getTitle())
.isEqualTo("About Us");
}
The preceding code uses the cssSelector() method to find the anchor element identified by its href attribute.
推薦閱讀
- Mastering Machine Learning for Penetration Testing
- Socket.IO Real-time Web Application Development
- Wireshark網絡分析就這么簡單
- 物聯網安全技術
- Building RESTful Web services with Go
- 網絡安全應急響應技術實戰
- Microsoft Dynamics CRM 2011 Applications(MB2-868) Certification Guide
- 數據血緣分析原理與實踐
- 園區網絡架構與技術
- bash網絡安全運維
- 圖解物聯網
- Building Microservices with Spring
- Hands-On Cloud:Native Microservices with Jakarta EE
- Twilio Cookbook(Second Edition)
- XSS跨站腳本攻擊剖析與防御