java - 如何通过 Java 使用 Selenium 打印 url 中的所有按钮文本
问题描述
脚步:
- 转到网站 > https://www.toolsqa.com/automation-practice-switch-windows/
- 从该页面获取按钮列表
- 打印页面上显示的按钮的名称。
代码试用:
package com.practice;
import java.util.List;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class Buttons {
public static void main(String[] args) throws InterruptedException {
System.setProperty("webdriver.chrome.driver",
"C:\\Users\\Oderint dum metuant\\eclipse-workspace\\JAR FILES\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.manage().window().maximize();
driver.get("https://www.toolsqa.com/automation-practice-switch-windows/");
List <WebElement> buttons = driver.findElements(By.tagName("button"));
for ( int i=0; i<buttons.size();i++){
WebElement button = buttons.get(i);
if(button.isEnabled()){
System.out.println(buttons);
}}}}
解决方案
我没有使用By.tagName方法,而是使用了By.cssSelector方法
这是工作代码...
package stackOverflow;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class ToolsqaCom {
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "D:\\Tushar\\JARs\\selenium\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://www.toolsqa.com/automation-practice-switch-windows");
driver.manage().window().maximize();
// ArrayList<String> l1 = new ArrayList<String>();
// WebElement b1 = driver.findElement(By.id("button1"));
// l1.add(b1.getText());
java.util.List<WebElement> b2 = driver.findElements(By.cssSelector("p button"));
for (int i = 0; i < b2.size() - 1; i++) {
String string = b2.get(i).getText();
System.out.println(string);
}}}
以下是输出:
新浏览器窗口
新消息窗口
新浏览器选项卡
警报框
定时提醒
换颜色
换颜色
已禁用
推荐阅读
- python - 如何摆脱python中的多个嵌套循环
- sql - 我可以在 SQL 的 IIF 中执行存储过程吗?
- sql-server - SQL Always On 辅助副本限制
- javascript - 有没有办法使用另一个页面中的对象?
- angular - Angular数据表有没有办法在用户在搜索按钮中输入相同的内容之前不显示数据
- python - 如何使用 PyGithub 在 Github 中创建私有存储库
- angular - 角度差异 ViewChild 与 ControlValueAccessor
- reactjs - 无法使用 useQuery 挂钩为具有一些 @client 变量的远程查询获取数据
- perl - 在 Perl 中使用自定义条件按三列对逗号分隔的文件进行排序
- java - 在处理中更改聚光灯方向