Selenium webdriver 学习笔记(三) - 基本UI控件操作

这篇博客详细介绍了如何使用Selenium WebDriver操作各种UI控件,包括文本框、按钮、下拉框、对话框及窗口切换。示例代码演示了输入文本、点击按钮、选择下拉选项、处理弹框和窗口切换等常见操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 文本框Textbox

      // Find the username input element by its name
      WebElement username = driver.findElement(By.name("username"));

      // Enter the user name: jill
      username.clear();
      username.sendKeys("jill");
     
      // Find the password input element by its name
      WebElement password = driver.findElement(By.name("password"));

      // Enter the password:123456
      password.clear();
      password.sendKeys("123456");

2. 按钮Button

      // Click the Login button by className
      WebElement loginButton = driver.findElement(By.className("btnTile"));  
      loginButton.click();

3. 下拉框Select

     //通过id或者name来定位下拉框, new一个Select对象

     Select globalSelect = new Select(driver.findElement(By.id("selectid")));

     //通过选项索引选中第二项

     globalSelect.selectByIndex(1); --[注]index是从0开始的

     //通过下拉选项的内容选中第二项(second_item)

     globalSelect.selectByVisibleText("second_item");

    //遍历Select下拉列表的选项

     WebElement select = driver.findElement(By.tagName("select"));

     List<WebElement> myOptions = select.findElements(By.tagName("option"));

     for (WebElement option : myOptions) {

             System.out.println(option.getAttribute("value");

             option.click();

      }

4. 对话框Alert, Confirm, Prompt

   //捕获Alert/Confirm/Prompt对话框

    Alert alert = driver.switchTo().alert();

    //获得Alert/Confirm/Prompt对话框内容

    String alertText = alert.getText();

    //确认Alert/Confirm/Prompt
    alert.accept();

    //取消Alert/Confirm/Prompt

    alert.dismiss();

    //输入值到Prompt

    prompt.sendKeys("abc");

 

5. 弹出窗口 popup window

     //使用driver.switchTo()可以进行Windows, Frames, Alerts, Confirms, Prompts之间的切换

     driver.switchTo().window("windowhandle");

     driver.switchTo().frame("framename");

     driver.switchTo().alert();

     

6. 切换到新的Window (import java.util.Set;)

      //1.  保存之前的Windows Handles

      Set<String> beforeHandlers = driver.getWindowHandles();
      String beforeHandler = beforeHandlers.iterator().next();

      // 2.  执行弹出新窗口的操作
    
  WebElement OKButton = driver.findElement(By.name("OK"));
      OKButton.click();

      //3.  保存现在的Windows Handles  
      Set<String> afterHandlers = driver.getWindowHandles();
        
      //4.  从现在的Windows Handles中remove调之前的,就能得到刚弹出新窗口的window handle

      afterHandlers.removeAll(beforeHandlers);
        
      String newWinhandler = afterHandlers.iterator().next();
            
      //5. 切换到新弹出的窗口        
     
driver.switchTo().window(newWinhandler);

      //6. 返回之前的窗口

      driver.switchTo().window(beforeHandler);

    

7. 上传文件

     WebElement FileUpload =driver.findElement(By.name("fileupload"));
     String filePath = "C:\\myFile01";
     earFileUpload.sendKeys(filePath);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值