Vorrei riaprire la domanda posta here e here per testare il caricamento di file in Nightwatch.js che utilizza il selenio.Test caricamento file in Nightwatch.js
Entrambi i collegamenti hanno la soluzione consigliata di impostare il valore dell'elemento di input del file come url. Nel mio caso d'uso, non sono riuscito a farlo funzionare. Anche impostando manualmente il tag value, fuori da nightwatch, dell'input dove type="file"
, non viene modificato l'URL. Ho provato questo su Chrome, Firefox e IE10, all'interno degli strumenti di sviluppo.
Una soluzione alternativa che ho visto stava cercando di emulare l'intero processo di caricamento dei file. Questo seguirà il percorso di fare clic sul pulsante di caricamento del file, digitando il percorso e digitando Invio. Ciò avverrebbe tramite i metodi .click
e .key
. Tuttavia, si perde la messa a fuoco della finestra di caricamento del file effettivo, che ritarda le sequenze di tasti fino alla chiusura di tale finestra. Altri sviluppatori sembravano essere in grado di risolvere questa soluzione direttamente in selenio usando i metodi .findElement
e .sendKeys
in java, ma non riuscivo a capire come farlo all'interno di javascript e nightwatch stesso.
Qualche idea?
// My test
module.exports = {
"Standard File Upload" : function (browser) {
browser
.url("http://localhost:3000")
.waitForElementVisible('body', 1000)
.waitForElementVisible('input[type="file"]', 1000)
.setValue('input[type="file"]','http://localhost:3000/testfile.txt')
.click('#submit')
.pause(1000)
.assert.containsText('h3', 'File Uploaded Successfully')
.end();
}
};
// http://localhost:3000/testfile.txt was tested manually in the file upload window and worked successfully
<!-- My input tag -->
<input id="fileUpload" type="file" name="textfile"/>
Vedo che questa risposta è stata pubblicata molto tempo fa, ma forse potresti aiutarmi con il file, che è stato pubblicato su s3. Ho bisogno di gestire il caso quando il percorso del file è come '' https: //..../ file.zip''. Ma come digitare questo percorso nella finestra di caricamento del file? – MisterMe