簡體   English   中英

Selenium Webdriver:如何使用他的相對路徑上傳文件(javascript)

[英]Selenium Webdriver : How to upload file using his relative path (javascript)

在chrome下使用帶有node.js(javascript)的selenium webdriver。

在某些測試中,我必須使用他的相對路徑上傳文件(我上傳的文件與測試文件位於同一目錄中)

var fileInput = driver.findElement(webdriver.By.xpath('//*[@id="j_idt69:j_idt70_input"]'));
fileInput.sendKeys('./file.xml');

奇怪的是我的測試失敗了,我發現了這個錯誤:

My error handler... WebDriverError: unknown error: path is not absolute: 

實際上我正在使用相對路徑,因為我的測試旨在用於不同的位置(VM,jenkins,pc ..)。 絕對路徑對我沒用。

建議??

我這樣解決了:

動態檢測絕對路徑並使用我的文件名連接它:

使用此節點命令檢測當前目錄路徑process.cwd()

生成的路徑是: var path = process.cwd()+'/file.xml';

上傳動作: fileInput.sendKeys(path);

sendKeys不支持相對路徑作為參數。

使用System.getProperty("user.dir")獲取當前工作目錄路徑。

 String path=System.getProperty("user.dir")
 fileInput.sendKeys(path+"\\file.xml");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM