Chromeでnode.js(javascript)を使用してSeleniumWebdriverを使用しています。
一部のテストでは、相対パスを使用してファイルをアップロードする必要があります(アップロードするファイルはテストファイルと同じディレクトリにあります)
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 ..)で使用することを目的としているため、相対パスを使用しています。絶対パスは私には役に立ちません。
提案??
sendKeys
引数として相対パスをサポートしていません。
System.getProperty("user.dir")
現在の作業ディレクトリパスを取得するために使用します。
String path=System.getProperty("user.dir")
fileInput.sendKeys(path+"\\file.xml");
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加