как сделать графический тест без отображения в FEST-SWING
-
22-09-2019 - |
Вопрос
В моем проекте мы используем ПРАЗДНИК для тестирования графического интерфейса пользователя.Нас убедили, что FEST - это мощная программа, однако каждый раз показывать кадры - пустая трата времени.Также мы используем continuum, а FEST не работает с continuum, потому что maven continuum не может открыть графический интерфейс (кстати, мы тоже используем maven, и наши тесты проходят в maven на нашем локальном компьютере).
Как я могу решить эту проблему?
Если это невозможно, пожалуйста, сообщите мне.
Решение
FEST by design отображает пользовательский интерфейс.Если вы не хотите, чтобы тесты блокировали ваш рабочий стол, единственный способ - использовать какой-нибудь виртуальный рабочий стол:- Xvfb (Linux) - VMware (Linux, Windows) - Автоматический вход в систему (Windows - не тестировался, найден где-то в документах)
Подробнее об этом вы можете прочитать здесь: http://docs.codehaus.org/display/FEST/Continuous+Integration
Могут быть связаны, а могут и не быть связаны, но для ускорения ваших тестов взгляните на:
Robot.settings().delayBetweenEvents()
Это определяет скорость выполнения действий мыши и клавиатуры.
Другие советы
Вы можете использовать модуль Cacio-tta от Caciocavallo...Я знаю, это звучит так, будто я говорю о сыре, но это реальный проект:
http://openjdk.java.net/projects/caciocavallo/
Платформа тестирования состоит из бегуна, который подключается к Fest («CacioFESTRunner») и позволяет запускать тест, не нарушая обычного процесса. Вам не нужен какой-либо специальный сервер, поскольку в cacio есть все необходимое.
Он также полностью синхронен, поэтому вам не нужно беспокоиться о ложных сбоях из-за асинхронной отправки команд рисования, и он доступен в виде пакета maven, поэтому его очень легко настроить.
Дополнительную информацию можно найти здесь:
Взгляните на Стеклоочиститель:
Фреймворк для тестируемой разработки Java-систем с помощью графического интерфейса пользователя.
Я сам ею не пользовался, но она написана теми же людьми, что и JMock, так что это должна быть утилита хорошего качества.