Java cssSelector和ByCssSelector在硒方面有什么区别

Java cssSelector和ByCssSelector在硒方面有什么区别,java,selenium,findelement,Java,Selenium,Findelement,在下面的代码中,By.cssSelector和By.ByCssSelector之间有什么区别 driver.findElement(By.cssSelector(“test”))。单击(); driver.findElement(By.ByCssSelector.id(“”)。单击() cssSelector-按类的静态方法 ByCssSelector-按类的静态内部类 cssSelector方法内部创建ByCssSelector类 因此 可以写成 driver.findElement(new

在下面的代码中,By.cssSelector和By.ByCssSelector之间有什么区别

driver.findElement(By.cssSelector(“test”))。单击();
driver.findElement(By.ByCssSelector.id(“”)。单击()

cssSelector
-按类的静态方法

ByCssSelector
-按类的静态内部类

cssSelector
方法内部创建
ByCssSelector

因此

可以写成

driver.findElement(new By.ByCssSelector("test")).click();
两者都是一样的

更新:

driver.findElement(By.ByCssSelector.id("test")).click();
上述声明无效,因为

  • findElement需要
    By
    对象,缺少
    new
    关键字

  • 当调用
    ByCssSelector
    时,我们必须传递css选择器值,因为它有
    接受cssselector值的参数化构造函数

  • ByCssSelector
    内部类没有要调用的id方法


你在哪里找到了
By.ByCssSelector.id()
你没有找到
By.ByCssSelector.id()
:)那句话没有意义。当调用
ByCssSelector
时,我们必须传递css选择器值,因为它具有参数化的构造函数,该构造函数接受cssselector值。
driver.findElement(By.ByCssSelector.id("test")).click();