Selenium sendkeys входит в трубу (|) для обратной косой черты (\) - PullRequest
0 голосов
/ 09 октября 2018

В селеновых ключах иногда обратная косая черта (\) заменяется символом трубы (|).эта проблема является спорадической проблемой.Ниже приведен фрагмент кода, который я использовал

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: | Downloads \ fileName.txt

Может ли кто-нибудь дать объяснение этой спорадической проблеме и есть ли правильный способ ввода данного текста или исправления для этой проблемы?

1 Ответ

0 голосов
/ 09 октября 2018

@ 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);
...