Тестирование ввода с клавиатуры с помощью java.awt.Robot - PullRequest
2 голосов
/ 04 января 2010

У меня есть тест, который выполняет пользовательский компонент Swing с использованием java.awt.Robot. Я хотел бы запустить тест на нашем сервере сборки, но серверы сборки работают на компьютерах с заблокированными окнами, а Robot.keyPress (char) не работает с заблокированным экраном. Иногда я нажимаю нажатия клавиш, такие как стрелка вниз и возврат, поэтому отправка их прямо в документ не помогает.

В настоящее время я просто использую "Джунит" для пропуска тестов, если ввод с клавиатуры не работает с первой попытки, но я бы хотел оставить эти тесты включенными. Я бы предположил, что кто-то там проводит такие тесты против графического интерфейса Swing. Есть идеи?

Ответы [ 2 ]

1 голос
/ 04 января 2010

Удар в темноте: возможно, виртуальная машина (например, VirtualBox) могла бы работать в фоновом режиме, но, насколько знает робот, для всех целей и задач будет "активна и разблокирована". Виртуальная коробка будет запускать ваши юнит-тесты.

0 голосов
/ 04 января 2010

Вы пытались использовать режим без головы Java? Я предполагаю, что java.awt.Robot не будет работать в этом случае, так как это определенно зависит от загрузки AWT. в таком случае лучше полагаться на фреймворки графического интерфейса, такие как крутой (и работающий в режиме без головы) fest-swing .

...