Tôi đang cố khởi chạy trình tìm kiếm trong trình duyệt chrome trên Linux bằng cách sử dụng phím tắt. Bởi vì tôi đang sử dụng Ruby và nó không có một phương pháp hợp âm, tôi đã thử như sau:Gửi phím tắt tới chrome bằng Selenium và Ruby
driver.action.key_down(:shift)
.key_down(:control)
.send_keys("i")
.key_up(:shift)
.key_up(:control)
.perform
Đoạn mã trên sẽ làm việc trong Firefox (như đề xuất trong Key press in (Ctrl+A) Selenium WebDriver), nhưng trong chrome, nó sẽ trả về nil nhưng không có kết quả nào xảy ra.
Bạn có lời khuyên nào không?
Bạn có thể vui lòng giải thích hơn không? Làm thế nào bạn có nil? Bạn tìm thấy đầu ra đó ở đâu? –
Tôi đã cố gắng chuyển mã này trong chế độ trình gỡ lỗi tại dòng lệnh để tôi có thể nhìn thấy tay đầu tiên nếu có bất kỳ lỗi nào được trả lại bị bỏ qua. Nó sẽ xuất hiện rằng 'nil' là những gì người xây dựng hành động trả về khi không có lỗi. Vì vậy, khi tôi cố gắng sử dụng mã này trên Firefox, và nó đã thành công, nil đã được trả lại. Khi tôi cố gắng sử dụng mã này trên chrome, và nó đã không thành công, nil cũng đã được trả về. Tuy nhiên, khi một cái gì đó được cú pháp sai (nói rằng tôi đã cố gắng để vượt qua "i" bằng cách sử dụng phương pháp key_down), một lỗi đã được hiển thị tại dấu nhắc lệnh. –
tôi có thể thấy '.send_keys (" i ")'. Bạn đã không vượt qua * i * bằng 'key_down'. –