[英]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.