Rumah > Java > javaTutorial > teks badan

Bagaimanakah saya boleh melaksanakan kod JavaScript dalam Selenium WebDriver Java?

Susan Sarandon
Lepaskan: 2024-10-24 21:23:29
asal
387 orang telah melayarinya

How can I execute JavaScript code within Java's Selenium WebDriver?

Menggunakan JavaScript dengan Selenium WebDriver Java

Anda berminat untuk menggunakan JavaScript dengan WebDriver (Selenium 2) melalui Java.

Lokasi Pelaksanaan Perintah

Arahan yang anda rujuk, "$ ./go webdriverjs," harus dilaksanakan daripada direktori tempat projek WebDriverJs terletak.

Mengintegrasikan JavaScript ke dalam WebDriver

Walau bagaimanapun, ambil perhatian bahawa WebDriverJs ialah pengikatan bahasa yang berasingan untuk WebDriver, membenarkan penciptaan ujian dalam JavaScript. Untuk melaksanakan JavaScript dalam WebDriver Java, ikuti langkah berikut:

<code class="java">WebDriver driver = new AnyDriverYouWant();
if (driver instanceof JavascriptExecutor) {
    ((JavascriptExecutor)driver).executeScript("yourScript();");
} else {
    throw new IllegalStateException("This driver does not support JavaScript!");
}</code>
Salin selepas log masuk

Sebagai alternatif:

<code class="java">WebDriver driver = new AnyDriverYouWant();
JavascriptExecutor js;
if (driver instanceof JavascriptExecutor) {
    js = (JavascriptExecutor)driver;
} // else throw...

// later on...
js.executeScript("return document.getElementById('someId');");</code>
Salin selepas log masuk

Kaedah executeScript() menerima kedua-dua panggilan fungsi dan kod JavaScript biasa. Ia menawarkan keupayaan untuk mengembalikan nilai dan meluluskan hujah yang kompleks, seperti yang ditunjukkan dalam contoh ini:

  1. Kembalikan WebElement:
<code class="java">js.executeScript("return document.getElementById('someId');");</code>
Salin selepas log masuk
  1. Tambah sempadan ke a WebElement:
<code class="java">WebElement element = driver.findElement(By.anything("tada"));
js.executeScript("arguments[0].style.border='3px solid red'", element);</code>
Salin selepas log masuk
  1. Tukar elemen input kepada butang radio:
<code class="java">js.executeScript(
         "var inputs = document.getElementsByTagName('input');" +
         "for(var i = 0; i < inputs.length; i++) { " +
         "    inputs[i].type = 'radio';" +
         "}" );</code>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah saya boleh melaksanakan kod JavaScript dalam Selenium WebDriver Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan