私は受け入れテストについて考えていて、それをどのように自動化できるか (たとえば、継続的デリバリー パイプラインに組み込むことができるか) をより明確に理解したいと考えています。メッセンジャー アプリケーションであるJavaで記述されたデスクトップ アプリケーションがあります。受け入れテストを自動化したい場合、どうすればよいですか? 手動テストの例を次に示します。「サーバーがクラッシュしたときに、ユーザー A がユーザー B にメッセージを送信しています。フェールオーバー サーバーに切り替えて、中断したところからチャットを再開できること、およびすべてのチャット機能がクライアントで引き続き期待どおりに機能することを確認します」
このような自動化された受け入れおよびシステム テストにJUnitを使用できますか? Seleniumについても聞いたことがありますが、それは Web アプリケーション専用だと思いましたか?
JUnit を使用した単体テストの概念は理解していますが、デスクトップ アプリケーションの機能のより高度なテストを自動化する方法についてはわかりません。一部のテストには、他のクライアントへのメッセージの送信など、GUI との対話が含まれる場合がありますが、サーバー クラッシュなどのサーバー側の要素が含まれるテストもあります。JUnit とアプリケーションのコードを使用してこれを行うことはおそらく可能であると考えていましたが、テストを開始するためにいくつかのスクリプト (Perl、Ruby など) が含まれている可能性がありますか?