Как загрузить изображение на веб-страницу в тесте Saucelabs от Selenium в c#?
Я должен загрузить любое изображение на веб-страницу, чтобы создать интернет-магазин для перехода на тест. Я должен нажать на кнопку для загрузки после этого я должен дать каталог файла, но я не могу дать локальный каталог, потому что тест выполняется на виртуальной машине на Saucelabs. Как решить эту проблему?
1 ответ:
Используйте класс
LocalFileDetector. Ваш код будет выглядеть примерно так:// WARNING!! Untested code written from memory, without benefit of an IDE. // May not work exactly correctly or even compile without modification. // Assume driver is a properly instantiated IWebDriver object, which is // to be used with a remote service (including SauceLabs or similar). IAllowsFileDetection fileDetectionDriver = driver as IAllowsFileDetection; fileDetectionDriver.FileDetector = new LocalFileDetector(); IWebElement fileElement = driver.FindElement(By.Id("idOfFileInputElement")); fileElement.SendKeys(@"C:\path\to\local.file");Установив детектор файлов, Метод
SendKeysсначала загрузит файл из локальной системы на удаленную машину, на которой фактически выполняется код. ЗатемSendKeysустановит файл в элементе<input>, используя локальный путь к файлу на удаленной машине.
Comments