2017-09-26 2 views
0

Je veux tester le téléchargement de fichiers avec ce code, qui a été trouvé here:Protractor fichier ne peut pas trouver de télécharger sur Firefox

var path = require('path');  

var fileToUpload = '..\\..\\files\\avatarPicture.jpg'; 
var absolutePath = path.resolve(__dirname, fileToUpload); 

var fileElem = element(by.css('input[type="file"]')); 

browser.executeScript(
    "arguments[0].style.visibility = 'visible'; arguments[0].style.height = '1px'; arguments[0].style.width = '1px'; arguments[0].style.opacity = 1", fileElem.getWebElement()); 

browser.executeAsyncScript(function(callback) { 
    document.querySelector('input[type="file"]').style.display = 'inline'; 
    callback(); 
    }); 

    $('input[type="file"]').clear().sendKeys(absolutePath); 

et il y a une WebDriverError:

Failed: File not found: C:\works\project\files\avatarPicture.jpg 
  • J'ai déjà vérifié le chemin - c'est correct. Je peux facilement ouvrir le fichier à partir de la ligne de commande
  • J'essaie d'utiliser à la fois les barres obliques inversées et les barres obliques. Il y a toujours la même erreur.
  • version WebDriver: gecko v0.17.0
  • de Windows 10 Pro
  • Tout fonctionne sur Chrome, mais je besoin d'une solution pour Firefox.
+0

https://stackoverflow.com/questions/21305298/how-to-upload-file-in-angularjs- e2e-protractor-testing/21314337 # 21314337 –

+0

@VenuDuggireddy ok, jusqu'à présent, je sais que c'est un problème de Firefox, le fichier est visible sur, par exemple, Chrome, mais encore Firefox ne peut pas trouver ce fichier. – wojky

Répondre

0

Essayez cette

fileElem.clear().then(function() { 
    fileElem.sendKeys(absolutePath); 
}) 
+0

Encore, il y a la même erreur. – wojky

0

vous pouvez essayer comme dans cette solution Bug 858