Tôi mới dùng cả C# và Selenium WebDriver.Làm thế nào để có được tất cả các tùy chọn trong danh sách thả xuống bởi Selenium WebDriver sử dụng C#?
Tôi biết cách chọn/nhấp vào một tùy chọn trong danh sách thả xuống, nhưng tôi đã gặp sự cố trước đó. Vì danh sách thả xuống được tạo động, tôi phải nhận tất cả các tùy chọn/giá trị từ danh sách trước khi chạy từng trường hợp.
Có ai vui lòng cho tôi biết cách nhận tất cả các giá trị/tùy chọn từ danh sách thả xuống không. Tôi đang sử dụng IE và tôi không tìm thấy bất kỳ lớp nào hỗ trợ phương thức để lấy các giá trị/tùy chọn trong không gian tên Selenium.IE cho C#.
dụ của tôi: Một danh sách chứa một số múi giờ:
<TD>
<select name = "time_zone">
<option value "-09:00"><script>timezone.Alaska</script></option>
<option value "+00:00"><script>timezone.England</script></option>
<option value "+02:00"><script>timezone.Greece</script></option>
<option value "+05:30"><script>timezone.India</script></option>
</select>
<TD>
Đây là một danh sách thả xuống trong một trang IE và làm thế nào để có được danh sách múi giờ tự động tạo ra?
Mã của tôi:
IWebElement elem = driver.FindElement(By.XPath("//select[@name='time_zone']"));
List<IWebElement> options = elem.FindElements(By.TagName("option"));
C# chỉ bật một Lỗi: Không thể ngầm bí mật kiểu 'OpenQA.Selenium.IWebElement' thành 'System.Collections.Generic.List'. Một chuyển đổi rõ ràng tồn tại (bạn có bỏ lỡ một diễn viên không?).
cảm ơn.
Tôi đã thêm WebDriver.dll và WebDriver.Support.dll vào tham khảo. –
anyway, cảm ơn tất cả các bạn. Tôi vẫn đang tìm kiếm giải pháp. –
Mã của bạn nên hoạt động nếu bạn sử dụng gõ ẩn: var options = elem.FindElements (By.TagName ("option")); –