2017-02-17 30 views
0

我的站點需要導入文件。這是通過點擊按鈕然後通過Windows標準表單在我的桌面上找到文件完成的。我努力讓量角器進入桌面位置。我把它作爲原始按鈕的一個.sendkeys點擊無法將文本輸入到窗體中

我錯過了什麼嗎?

回答

0

我會這樣做:

var myPath = require('path');

it('tests the file upload functionality', function() { 
    var fileToUpload = '../yourpath/yourfile.exe', 
     absolutePath = path.resolve(__dirname, fileToUpload); 

    element(by.css('input[type="file"]')).sendKeys(absolutePath);  
    element(by.id('uploadBtn')).click(); 
}); 
  1. 使用該路徑模塊解析文件的完整路徑。
  2. 設置輸入[type =「file」]元素的路徑。
  3. 點擊上傳按鈕。

注意,它不會FF下工作,以便在FF上載,使得輸入域可見:

browser.executeAsyncScript(function(callback) { 
    document.querySelectorAll('#inputElem')[0].style.display = 'inline'; 
    callback(); 
}); 

// Now upload should work 
$('input[type="file"]').sendKeys(absolutePath);  
$('#uploadButton').click(); 
+0

要添加到您的回答,你不會需要點擊上傳按鈕再次。只需在幕後提交表格 – AdityaReddy

相關問題