如果找不到提交按钮,要如何在 Selenium webdriver 中提交表单?


即使找不到提交按钮,也可以在 Selenium webdriver 中提交表单。这可以通过在表单标签内找到任何元素以及在其上应用提交方法来实现。Html 代码中的表单由 <form> 标签标识。

让我们研究一下表单标签中元素的 html 代码 −

在上面的示例中,我们将尝试借助电子邮件或密码字段而不是单击登录按钮来提交表单。

语法

driver.findElement(By.className("input__input")).sendKeys("96968547");
driver.findElement(By.className("session_password")).sendKeys("test123");
driver.findElement(By.className("session_password")).submit();

示例

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import java.util.concurrent.TimeUnit;
public class SubmitFrm{
   public static void main(String[] args) {
      System.setProperty("webdriver.gecko.driver",
         "C:\Users\ghs6kor\Desktop\Java\geckodriver.exe");
      WebDriver driver = new FirefoxDriver();
      //implicit wait
      driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
      //URL launch
      driver.get("https://www.linkedin.com/");
      // identify element within form
      WebElement m=driver.findElement(By.id("session_key"));
      m.sendKeys("96968547");
      WebElement n=driver.findElement(By.id("session_password"));
      n.sendKeys("test12");
      //submit form
      n.submit();
      Thread.sleep(1000);
      System.out.println("Page title: " + driver.getTitle());
      driver.close();
   }
}

输出

更新于: 06-04-2021

2K+ 访问量

开启你的职业旅程

完成课程获取认证

开始学习
广告
© . All rights reserved.