はい、GUIアプリは確かに自動化するのが難しいです。アプリのテクノロジー(Swing、Web、WPF、iOS)に関係なく、最初に価値の高いテストの自動化に集中する必要があります。さらに、テストの自動化はGUIレベルだけでなく、ユニット、統合、および機能(GUI)テストを組み合わせたものである必要があります。
Webアプリに取り組んでいますか?もしそうなら、WatirやWebDriverのような素晴らしいオープンソースツールを見てください。(Telerikのテストスタジオも紹介しますが、完全に開示するために、私はそのツールの伝道者です。)
デスクトップアプリケーション(またはモバイル)は自動化に多くの課題をもたらし、それは使用しているプラットフォームに完全に依存します。Test StudioはWPFをサポートしていますが、他の商用ツールやいくつかの無料ツールを探すこともできます。Swingアプリ用のツールは知りませんが、知識が不足しているのは、私が長年そのドメインから離れていたためです。(そして多分私はそれからあまりにも外れているので、Swingは通常のJava GUIツールセットでさえありません...)
iOSとAndroidは、信頼できる自動化ツールを見つけるのが難しいものです。Frankフレームワーク/APIがiOSで動作することは知っていますが(TestStudioのAppStoreには無料のレコーダーがあります)、DroidハードウェアとOSバージョンの並外れたマトリックスを確実にサポートする他のツールはありません。
プラットフォームやツールセットに関係なく、GUIテストを処理するための基本的なアプローチを学ぶ必要があります。価値の高いテストに焦点を当て、ページオブジェクトパターンなどのアプローチを通じて重複を回避する方法を学び、特定のアプリケーションで同期/タイミングの問題に対処する方法を学びます。 。
それは長距離ですが、注意深く作業すれば、それだけの価値があります。
(そして楽しい、IMOも。)