2017-02-16 84 views
1

我想知道在打字稿中用selenium-webdriver處理遠程文件上傳的方式是什麼?在打字稿中使用硒進行遠程文件上傳?

在JavaScript中,這段代碼的工作原理:

import remote from 'selenium-webdriver/remote'; 
// import * as remote from 'selenium-webdriver/remote'; // used for typescript 

browser.setFileDetector(new remote.FileDetector()); 
uploadElement.sendKeys(path.resolve(__dirname, f)); 

但在打字稿,我越來越Property 'FileDetector' does not exist on type 'typeof remote'。我已經安裝了@types/selenium-webdriverselenium-webdriver

"@types/selenium-webdriver": "^2.53.39", 
"selenium-webdriver": "^3.0.1" 

編輯:更新與建議從bcherny

import { FileDetector } from 'selenium-webdriver'; 

return fileDetector.handleFile(browser.driver, f).then((fPath) => { 
    browser.setFileDetector(fileDetector); 

    return uploadElement.sendKeys(path.resolve(__dirname, fPath)) 
} 

編輯:工作代碼

import * as remote from 'selenium-webdriver/remote'; 

browser.setFileDetector(new remote.FileDetector()); 
return uploadElement.sendKeys(path.resolve(__dirname, f)) 

回答

0

工作代碼,不得不從遠程分型

import * as remote from 'selenium-webdriver/remote'; 

browser.setFileDetector(new remote.FileDetector()); 
return uploadElement.sendKeys(path.resolve(__dirname, f)) 
1
+0

導入所以我有點糊塗了這一點。在selenium-webdriver的類型中,它表示使用selenium-webdriver/remote.FileDetector進行遠程上傳 –

+0

您是否嘗試過上述代碼,並且它的工作原理?我鏈接的文件是硒-webdriver類型的測試。 – bcherny

+0

我做了,但它不起作用。 –