У меня есть поле файла, которое имеет opacity: 0
и накладывается поддельной кнопкой. Его обычная техника CSS для подделывания своего рода кнопки «Загрузить», которая постоянно отображается в разных браузерах.Возможно ли взаимодействовать со скрытыми элементами с capybara?
Capybara не позволяет позвонить по телефону attach_file
на этот вход. Ошибка Selenium::WebDriver::Error::ElementNotVisibleError: Element is not currently visible and so may not be interacted with
.
Кто-нибудь знает, как заставить capybara взаимодействовать с невидимыми элементами?
Ответ по-прежнему остается без ответа, но я нашел работу. Ничего разумного, просто сделайте видимым элемент с простым скриптом
page.execute_script %Q{
$('#photos').css({opacity: 1, transform: 'none'});
}
Я отправляю его для записи.
Возможно, это будет трудно. Попробуйте начать с JS [здесь] (https://code.google.com/p/selenium/wiki/FrequentlyAskedQuestions#Q:_Does_WebDriver_support_file_uploads?). Но это может не работать во всех случаях и в браузерах. –
Похоже, вы не используете capybara-webkit (из-за «Selenium :: WebDriver :: Error» в сообщении об ошибке), поэтому я удалил тег capybara-webkit из вашего вопроса –
Возможно, он уже ответьте здесь: http://stackoverflow.com/a/10805128/914986 – Hengjie