我想上传一个带有selenium webdriver的文件。我可以使用文件的绝对路径在本地机器上执行此操作:String filename =“C:\ Windows \ Temp \”+“templatePMT.html”;。 我正在使用Eclipse和带有pom.xml的maven项目。我在SVN上提交了这个项目。我使用Jenkins软件在IE8上运行Web应用程序的测试。 Jenkins部署在Red Hat 5.0上。 ----问题是:----如何使用相对路径而不是绝对路径上传文件?该文件位于我项目的资源文件夹中。
答案 0 :(得分:1)
答案 1 :(得分:1)
您可以使用以下代码获取文件的绝对路径并上传内容
String filePath = System.getProperty("user.dir") + "/src/res/test.pdf;
driver.findElement(By.id("elementID")).sendKeys(filePath);
您也可以使用cssSelector查找元素。那么代码就是;
driver.findElement(By.cssSelector("input[id='elementId']")).sendKeys(filePath);
在此处查看更多正则表达式:Finding an element by partial id
答案 2 :(得分:0)
您可以获取资源文件的绝对路径:
URL resource = Main.class.getResource("/templatePMT.html");
String absolutePath = Paths.get(resource.toURI()).toString();