Selenium显示错误“WebElement类型中的方法sendKeys(CharSequence [])不适用于参数(String)”

时间:2015-09-18 12:12:55

标签: java selenium selenium-webdriver webdriver

在JAVA执行selenium脚本时,我遇到了错误。

  

错误:“WebElement类型中的方法sendKeys(CharSequence [])是   不适用于参数(String)“

我的代码:

package Pkg_09;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.ie.InternetExplorerDriver;

public class Practice {

    public static void main(String[] args) {

        WebDriver driver1;

        driver1.get("www.google.com");
        driver1.findElement(By.id("gs_htif0")).sendKeys("Sachin Tendulkar");
        driver1.findElement(By.id("aa")).sendKeys("xx");
        driver1.findElement(By.name("btnK")).click();
    }
}

如果有任何我遗漏的内容,请告诉我。

4 个答案:

答案 0 :(得分:1)

此行为取决于您用于运行此代码的Java版本。从版本1.6开始,可以将单个String实例作为CharSequences传递,它可以作为sendKeys()方法的参数。但是,如果您使用旧版本或在构建脚本中指定为源/目标版本,那么您应该传递一个CharSequences数组作为sendKeys()方法的参数。所以它可以像:

public static void main(String[] args) {
    WebDriver driver1;
    driver1.get("www.google.com");
    driver1.findElement(By.id("gs_htif0")).sendKeys(new String[] {"Sachin Tendulkar"});
    driver1.findElement(By.id("aa")).sendKeys(new String[] {"xx"});
    driver1.findElement(By.name("btnK")).click();
}

答案 1 :(得分:1)

尝试以下代码:

driver1.findElement(By.id("aa")).sendKeys(new String[]{"xx"});

答案 2 :(得分:0)

我们正在使用Java 8的eclipse氧气版本,它对我们来说很好。 我们与eclipse Luna和indigo面临同样的问题

答案 3 :(得分:0)

当您尝试将JAVA 8与较低版本的硒一起使用时,会发生这种情况,将您的罐子更换为selenium 3.0.1并且一切都应该正常工作。