現在、Linuxシステム(Gnomeを有効にする)から手動で呼び出されるいくつかのUIテストケースがあります。マシンにログインし、次のコマンドを実行します。
java -jar test_case.jar
テストケースを呼び出します。その後、ブラウザが開き、アプリケーションテストが実行され、ログが作成され終了します。
これで、Jenkins Pipeline Jobでこれを自動化する予定です。しかし、Jenkinsのパイプライン操作は疑似端末で実行されますが、上記のコマンドはGnomeコンソールで実行する必要があると信じているので、これを行う正しい方法が何であるかわかりません。
このシナリオを自動化する方法はありますか?
ベストアンサー1
Xvfb(X仮想フレームバッファ)をこの目的に使用できます。実際には、GUIを使用せずにグラフィック依存性のあるテスト/タスクを実行できるように、メモリにのみ存在するディスプレイを持つことができます。
CentOSでは、yumを使用してコアCentOSリポジトリからXvfbをインストールできます。
yum install xorg-x11-server-Xvfb
Xvfbをインストールした後でそれを使用するには、コマンドの前に以下を付けますxvfb-run
。
xvfb-run java -jar test_case.jar
xvfb-run
いくつかの便利なタスクを実行できるラッパーコマンドです。まず、Xvfbディスプレイを初期化し、それを実行コマンドに渡します。コマンドが完了すると、モニターは正常に終了します。