Watir - Download

Abbiamo pulsanti o collegamenti nell'interfaccia utente o nel nostro sito Web che scarica un pdf o un documento. Possiamo testarlo per l'utilizzo con Watir dando alcune preferenze al browser.

La sintassi per il download -

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

Le preferenze hanno il download in cui dobbiamo fornire il percorso in cui vogliamo che il file venga memorizzato dopo il download e lo stesso deve essere dato ai browser usando le opzioni come mostrato nella sintassi sopra.

Un esempio funzionante è mostrato qui. Qui, abbiamo creato una pagina di test con un pulsante, che quando cliccato scaricherà un file chiamato file.txt come mostrato di seguito -

<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

Produzione

Quando fai clic sul pulsante di download, il file viene scaricato.

Ora proviamo lo stesso usando 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'

Il percorso che abbiamo fornito per memorizzare il file scaricato è "C: / download". Quando eseguiamo il codice sopra, avremo il download del file nel percorso di download indicato come mostrato di seguito -

L'output testdownload.png è come mostrato qui -