am baru untuk selenium , saat ini saya bekerja pada selenium webdriver saya ingin memilih nilai dari daftar drop-down. Id=periodId dan pilihan lebih banyak dalam bahwa saya mencoba untuk memilih 52 minggu Terakhir.
Berikut ini adalah kode HTML:
<select id="periodId" name="period" style="display: none;">
<option value="l4w">Last 4 Weeks</option>
<option value="l52w">Last 52 Weeks</option>
<option value="daterange">Date Range</option>
<option value="weekrange">Week Range</option>
<option selected="" value="monthrange">Month Range</option>
<option value="yeartodate">Year To Date</option>
</select>
Silakan menyarankan saya beberapa cara untuk klik drop-down.
Saya mencoba dengan contoh di atas garis tapi saya mendapatkan error seperti Elemen saat ini tidak terlihat dan tidak dapat berinteraksi dengan Perintah durasi atau timeout: 32 milidetik drop down nilai-nilai ini adalah jquery multiselect widget format.
Hanya bungkus WebElement ke Pilih Objek seperti yang ditunjukkan di bawah ini
Select dropdown = new Select(driver.findElement(By.id("identifier")));
Setelah ini dilakukan, anda dapat memilih nilai yang diperlukan dalam 3 cara. Pertimbangkan sebuah file HTML seperti ini
<html>
<body>
<select id = "designation">
<option value = "MD">MD</option>
<option value = "prog"> Programmer </option>
<option value = "CEO"> CEO </option>
</option>
</select>
<body>
</html>
Sekarang untuk mengidentifikasi dropdown melakukan
Pilih dropdown = new Pilih(driver.findElement(Oleh.id("sebutan")));
Untuk pilih opsi yang mengatakan 'Programmer' yang dapat anda lakukan
dropdown.selectByVisibleText("Programmer ");
atau
dropdown.selectByIndex(1);
atau
dropdown.selectByValue("prog");
Seperti dibahas di atas, kita perlu untuk mengimplementasikan Pilih Kelas Selenium dan selanjutnya kita dapat menggunakan berbagai metode yang tersedia seperti :-
Benar-benar pilih
tidak pilih tetapi tidak menempatkan nilai-nilai yang dipilih untuk masing-masing bidang . Bertanya-tanya di mana di bawah ini cuplikan bekerja sempurna
driver.findElement(By.name("period")).sendKeys("Last 52 Weeks");
kode untuk memilih dropdown menggunakan xpath
Select select = new
Select(driver.findElement(By.xpath("//select[@id='periodId']));
kode untuk memilih particaular pilihan menggunakan selectByVisibleText
select.selectByVisibleText(Last 52 Weeks);
Anda dapat menggunakan metode berikut untuk menangani drop down selenium.
Untuk lebih jelasnya anda bisa merujuk http://www.codealumni.com/handle-drop-selenium-webdriver/ posting ini.
Itu pasti akan banyak membantu anda dalam menyelesaikan permintaan anda.
WebDriver driver = new FirefoxDriver();
WebElement identifier = driver.findElement(By.id("periodId"));
Select select = new Select(identifier);
select.selectByVisibleText("Last 52 Weeks");
Saya belum mencoba Selenium, tapi untuk Galen tes ini bekerja,
var daftar = driver.findElementByID("periodID"); // ini akan kembali elemen web
klik disini.klik(); // ini akan membuka daftar dropdown.
klik disini.typeText("14w"); // ini akan memilih opsi "14w".
Anda dapat mencoba ini pada selenium, galen dan selenium bekerja sama.
Pertama Import paket seperti :
import org.openqa.selenium.dukungan.ui.Pilih;
kemudian menulis dalam satu baris seperti:
baru Pilih (driver.findElement(Oleh.id("sampleid"))).selectByValue("SampleValue");
Coba ini:
driver.findElement(By.name("period")).sendKeys("Last 52 Weeks");