Watir - Загрузки

У нас есть кнопки или ссылки в пользовательском интерфейсе или на нашем веб-сайте, который загружает PDF-файл или документ. Мы можем протестировать это для использования с Watir, задав некоторые настройки браузеру.

Синтаксис для скачивания -

prefs = {
   'download' => {
      'default_directory' => "C:/download",
      'prompt_for_download' => false,
   }
}
b = Watir::Browser.new :chrome, options: {prefs: prefs}

Prefs имеет загрузку, в которой нам нужно указать путь, по которому мы хотим, чтобы файл был сохранен после загрузки, и то же самое должно быть указано в браузерах с использованием параметров, как показано в синтаксисе выше.

Здесь показан рабочий пример. Здесь мы создали тестовую страницу с кнопкой, при нажатии на которую будет загружен файл с именем file.txt, как показано ниже -

<html>
   <head>
      <title>Testing UI using Watir</title>
   </head>
   
   <body>
      <br/>
      <br/>
      <button id = "btnsubmit">
         <a href = "file.txt" download>Click to Download!</a>
      </button>
      <br/>
   </body>
</html>

file.txt

This is for testing watir download

Вывод

Когда вы нажимаете кнопку загрузки, файл загружается.

Теперь давайте протестируем то же самое с помощью Watir -

require 'watir'
prefs = {
   'download' => {
      'default_directory' => "C:/download",
      'prompt_for_download' => false,
   }
}
b = Watir::Browser.new :chrome, options: {prefs: prefs}
b.goto('http://localhost/uitesting/filedownload.html')
b.button(id: 'btnsubmit').click
b.screenshot.save 'testdownload.png'

Путь, который мы указали для сохранения загруженного файла, - «C: / download». Когда мы выполним приведенный выше код, у нас будет загрузка файла по пути загрузки, как показано ниже -

Выходной файл testdownload.png показан здесь -