Comments 9
можно ли работать с «нативными» окнами (диалог загрузки файлов),
…
И вот тут WebDriver оказывается бесспорным лидером.
поправьте, если ошибусь: селениум как раз НЕ умеет работать с диалогом загрузки файлов
WebDriver умеет работать с диалогом загрузки файлов НА сервер (то есть умеет заполнять поля ввода типа file, но не умеет загружать файлы С сервера. Есть такая проблема. Но я же не утверждаю, что WebDriver идеален :)
Подскажите, как в Селениуме загружать файлы на сервер? Я до сих пор считал, что он этого не умеет.
Файловые поля ввода заполняются точно так же, как и другие поля — методом sendKeys, в качестве параметра передаётся путь к файлу (диалог выбора файла при этом обрабатывается автоматически).
Пример (код на Grrovy):
Пример (код на Grrovy):
import org.openqa.selenium.*
import org.openqa.selenium.firefox.*
import java.util.concurrent.*
driver = new FirefoxDriver()
driver.manage().timeouts().implicitlyWait(0, TimeUnit.SECONDS)
driver.get("http://www.htmlcodetutorial.com/forms/_INPUT_TYPE_FILE.html")
driver.findElementByName("upfile").sendKeys("c:\\windows\\win.ini")
driver.findElementByCssSelector("td.content input[type='submit']").click()
Пишут что WebDriver умеет — в IE и FF как минимум.
stackoverflow.com/questions/6128208/how-to-deal-with-file-uploading-in-test-automation-using-selenium-or-webdriver
stackoverflow.com/questions/9431978/file-upload-with-selenium-webdriver-and-java-one-solution
Кстати, Андрей, думаю надо писать не просто «Селениум» а конкретно WebDriver, потому что Selenium Remote Control был распространён не так давно, но RC и WebDriver отличаются принципиально, и этот переход надо «не прозевать».
stackoverflow.com/questions/6128208/how-to-deal-with-file-uploading-in-test-automation-using-selenium-or-webdriver
stackoverflow.com/questions/9431978/file-upload-with-selenium-webdriver-and-java-one-solution
Кстати, Андрей, думаю надо писать не просто «Селениум» а конкретно WebDriver, потому что Selenium Remote Control был распространён не так давно, но RC и WebDriver отличаются принципиально, и этот переход надо «не прозевать».
Умеет в IE, FF, Chrome.
Драйверы для Opera, Safari, iOS, Android пока не поддерживают загрузку файлов.
Драйверы для Opera, Safari, iOS, Android пока не поддерживают загрузку файлов.
И, да — WebDriver и Selenium RC это два принципиально разных инструмента. Я об этом писал в предыдущей статье, и ещё есть статья полуторагодовой давности, которая была написана сразу после выхода Selenium 2.0, в которой я постарался описать различия: «Раз селениум, два селениум»
Ваша статья побудила написать о нашем опыте создания тестов с использованием Watir WebDriver :)
Sign up to leave a comment.
Что такое Selenium WebDriver?