Đôi khi tháng trước (tháng 6 năm 2013), một số thử nghiệm Capybara của chúng tôi bắt đầu không thành công chủ yếu do các nút mà họ đang cố bấm không có trong chế độ xem. Lý tưởng nhất, tôi muốn tìm ra những gì đã thay đổi. Chúng tôi hiện đang sử dụng selenium-webdriver 2.33 nhưng tôi đã cố gắng quay lại phiên bản 2.29 và nó vẫn không hoạt động. Hiện tại, chúng tôi chỉ đang chạy trên Firefox và có thể do phiên bản Firefox mới hơn.Tự động cuộn một nút vào chế độ xem với Capybara và Selenium
Chặn điều đó, tôi không thể tìm ra cách cuộn các nút đó thành chế độ xem. Từ những gì tôi thu thập, tôi có thể sử dụng scrollIntoView nhưng không chắc chắn làm thế nào để gọi nó trong bước Capybara. Tôi đã thử các biến thể trên:
Capybara.current_session.driver.execute_script("arguments[0].scrollIntoView(true;)", find_button(button).native)
Nhưng không may mắn vì find_button không hoạt động.
Lưu ý: chúng tôi đang chọn dựa trên văn bản của nút. Lựa chọn dựa trên ID là có thể nhưng sẽ yêu cầu nhiều thay đổi đối với các kiểm tra giao diện người dùng của chúng tôi vì vậy chúng tôi muốn tránh nó.
Lưu ý khác: nút nằm trong div có thể cuộn. Bản thân trang không cuộn. –
Phiên bản Firefox nào? Bạn có thể muốn thử gỡ cài đặt Firefox và sau đó cài đặt một phiên bản Firefox cụ thể và sau đó vô hiệu hóa nâng cấp lên Firefox để nó vẫn ở phiên bản bạn mong đợi. – djangofan