2017-09-26 162 views
0

我想測試此代碼,它被發現here文件上傳上傳:量角器找不到文件,在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); 

且有WebDriverError:

Failed: File not found: C:\works\project\files\avatarPicture.jpg 
  • 我已經檢查了路徑 - 這是正確的。我可以很容易地從命令行打開文件
  • 我嘗試使用反斜槓和斜線。還是有同樣的錯誤。
  • webdriver的版本:壁虎v0.17.0
  • 的Windows 10 Pro的
  • 一切工作在Chrome,但我需要爲Firefox的解決方案。
+0

https://stackoverflow.com/questions/21305298/how-to-upload-file-in-angularjs- e2e量角器測試/ 21314337#21314337 –

+0

@VenuDuggireddy好的,到目前爲止我知道它是Firefox的問題,該文件在Chrome上可見,但Firefox仍然無法找到該文件。 – wojky

回答

0

試一下這個

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

仍然有同樣的錯誤。 – wojky

0

可以嘗試在此Bug 858解決辦法