Я бы сказал:
Джемми, вероятно, отсутствует, потому что он лучше всего работает как плагин Eclipse. (Не уверен насчет Jelly)
Если у вас есть пользовательские компоненты, то Abbot / Costello отсутствует, я обнаружил, что он непредсказуемо реагирует на них. С пользовательскими компонентами это работает как шарм.
Если запуск тестов из среды IDE Netbeans очень важен для вас, то и Marathon отсутствует, поскольку вам понадобятся тесты из командной строки (или, конечно, его отдельное приложение). Хотя, IMO, это лучшая поддержка пользовательских компонентов.
Это действительно оставляет FEST. FEST очень хорошо интегрируется в работу с Netbeans, потому что он может запускаться так же, как и JUnit, и его результаты теста отображаются прямо на панели «Результаты теста» в IDE Netbean. И он поставляется с действительно аккуратным и простым плагином, который упрощает настройку тестов FEST: подключаемый модуль Geertjan NetBeans для FEST-Swing . Основным недостатком FEST является то, что он только для воспроизведения, без записи, и тестовые случаи должны быть написаны вручную.
Лично мне пришлось принять аналогичное решение о выборе инструмента тестирования для автоматизированной среды тестирования несколько месяцев назад - я пошел с Marathon, потому что тестирование пользовательских компонентов в моем целевом приложении имело огромное значение. При принятии решения также учитывались и другие факторы: способность интегрировать свои тесты в систему непрерывной интеграции, например круиз-контроль; и тестеры с ограниченными возможностями программирования должны были писать / записывать тестовые сценарии; было также важно в нашем случае.
Для ваших целей я бы сказал, что для вашего конкретного вопроса FEST кажется наиболее логичным выбором с информацией, известной сейчас.
Тем не менее, я предлагаю вам провести день на каждом инструменте тестирования, пытаясь подключить каждый из них и записывать все за и против. В конце концов, вы можете обнаружить, что ответили на свой вопрос лучше, чем я, потому что вполне вероятно, что вы обнаружите больше требований, чем вы сами знаете сейчас - я знаю, что сделал!
НТН
Отказ от ответственности: у меня нет опыта работы с UISpec4J, Jelly и WindowLicker, поэтому мой ответ может быть неполным.
Edit:
Чтобы добавить, FEST может тестировать приложение при выходе. Это исправлено недавно. Marathon не может сделать то же самое - и это влияет на мое тестирование для тестовых случаев, которые включают тестирование закрытия приложения.
Насколько мне известно, на Abbot / Costello также влияет та же проблема (но я не в курсе этого), а для других инструментов тестирования я не пробовал тестировать выход из приложения.