Всем привет,
Столкнулся с такой проблемой:
Необходимо протестировать некий функционал при вставке текста из буфера обмена.
Если бы все гонялось на одной машине, например linux с визуализацией, то никаких проблем бы не возникало, записал бы в буфер так:
public static void setClipboardContents(String aString) {
StringSelection stringSelection = new StringSelection(aString);
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(stringSelection, null);
}
затем вставил в поле при помощи комбинации клавиш Ctrl+V.
Но как быть если тесты запускаются на машине без визуализации с помощью seleniumGrid и через RemoteWebDriver гоняются на другой.
Сталкиваюсь с двумя проблемами:
1. Для записи в Clipboard требуется дисплей, то есть если нет визуализации, то запись в буфер обмена невозможна.
2. Допустим визуализация есть и я записал в буфер обмена текст, затем хочу вставить в поле, но браузер то на другой машине, там буфер пустой, опять же задача невыполнима.
С помощью средств вуртуализации, в данном случае стоит openVZ, расшарить буфер между вируалками не получается, не нашел как это настроить=(
Возможно у selenium есть свои средства, ну мало ли. Например, для возможности работы с файлами в таком окружении существует org.openqa.selenium.remote.LocalFileDetector.
Возможно средствами Java можно каким-либо способом передавать clipboard.
Благодарен за помощь=)