Selenium sendkeys输入管道(|)作为反斜杠(\)
在selenium sendkeys中,反斜杠(\)有时会替换为管道(|)符号。这是一个零星的问题。 下面是我使用的代码片段Selenium sendkeys输入管道(|)作为反斜杠(\),selenium,sendkeys,Selenium,Sendkeys,在selenium sendkeys中,反斜杠(\)有时会替换为管道(|)符号。这是一个零星的问题。 下面是我使用的代码片段 aItDriver.switchTo().window("[TITLE:Choose File to Upload]"); aItDriver.getKeyboard().sendKeys(new String[]{"I:\Downloads\fileName.txt" + Keys.ENTER}); 在这里,我们使用autoit(aItDriver)驱动程序输入文件上
aItDriver.switchTo().window("[TITLE:Choose File to Upload]");
aItDriver.getKeyboard().sendKeys(new String[]{"I:\Downloads\fileName.txt" + Keys.ENTER});
在这里,我们使用autoit(aItDriver)驱动程序输入文件上传屏幕的文件路径
文件上载屏幕的预期输出为:
I:\Downloads\fileName.txt
但我们很少看到下面的文本输入到上传窗口文本框中
I:|下载\fileName.txt
有人能解释一下这个零星的问题吗?是否有正确的方法输入给定的文本或修复此问题?@Marlan
根据您使用的语言,很少有解决方案可以修复绝对路径
在java中,您可以尝试:
public static void main(String[] args) throws IOException {
Path path = Paths.get("myFile.txt");
Path absolutePath = path.toAbsolutePath();
System.out.println(absolutePath.toString());
}
之后,您可以只使用element.sendKeys(absolutePath.toString());
上传文件
使用JavaScript:
const path = require('path');
let absoluteFilePath = path.resolve('myFile.txt');
element(by.id('something').sendKeys(absoluteFilePath);