0

以下のコードの By.cssSelector と By.ByCssSelector の違いは何ですか。

driver.findElement(By.cssSelector("test")).click(); driver.findElement(By.ByCssSelector.id("")).click();

4

1 に答える 1

1

cssSelector- By Class の静的メソッド。

ByCssSelector- By Class の static 内部クラス。

cssSelectorメソッドは内部的にByCssSelectorクラスを作成します。

したがって

driver.findElement(By.cssSelector("test")).click();

次のように書くことができます

driver.findElement(new By.ByCssSelector("test")).click();

どちらも同じです。

アップデート:

driver.findElement(By.ByCssSelector.id("test")).click();

上記のステートメントは無効です。

  • findElement はByオブジェクトを想定していますが、newキーワードがありません。

  • cssselector 値を取るパラメーター化されたコンストラクターがあるByCssSelectorため、呼び出し時に css セレクター値を渡す必要があります。

  • ByCssSelector内部クラスには、呼び出す id メソッドがありません。

于 2021-02-13T18:59:28.213 に答える