Вы говорите об отдельном Java-приложении или оно основано на веб-технологиях с Java на сервере, но HTML доставляется клиенту?
Предполагая, что это отдельное Java-приложение, SilkTest и QTP должны хорошо работать с Java. (Используете ли вы соответствующую надстройку / плагин Java для поддержки Java? В QTP есть отдельная надстройка для поддержки Java.) Еще одним инструментом, который следует рассмотреть, будет IBM Rational Functional Tester. Он построен на Java и хорошо работает с приложениями Java. Я использовал все 3 инструмента, но никогда не использовал SilkTest в приложении Java. По моему опыту, и QTP, и RFT хорошо работали с Java-приложениями.
Как уже говорилось, в каждом проекте автоматизации тестирования будут элементы управления пользовательским интерфейсом, которые не будут отлично работать из коробки с выбранным инструментом автоматизации. (Сторонний контроль обычно является виновником). В этих случаях вам нужно будет вручную обойти код. В примере щелчков правой кнопкой мыши, которые не работают должным образом, мне часто приходилось отказываться от нажатия, чтобы выбрать элемент из меню, вызываемого правой кнопкой мыши, в пользу использования нажатий клавиш для выбора нужного элемента. На что это действительно указывает, так это то, что вы должны отказаться от идеи записи / воспроизведения, являющейся эффективным средством автоматизации.
Кроме того, для вас может быть полезным опубликовать фактический код, который был записан, и в какой строке он не может выбрать данный элемент. Фактический код скрипта может дать мне некоторые подсказки относительно того, что на самом деле происходит.