Jenkins は、ソースコード管理からのソースコード入手、プロジェクトの作成、アプリケーションのテストなど、繰り返されるタスクを自動化するビルド管理用アプリケーションです。Jenkins を使うことで、ビルドおよびテスト プロセスの一部として TestComplete のテスト実行を自動化できます。
このチュートリアルのトピックでは、TestComplete を使用するジョブを作成する手順について説明します。
Jenkins でテストを実行する前に、TestComplete Jenkins プラグインをインストールしてスレーブノードの設定を行う必要があります。
TestComplete Jenkins プラグインのインストール
Jenkins で [Jenkinsの管理] - [プラグインの管理] を選択します。
[利用可能] タブに移動します。
[TestComplete support] を選択し、[再起動せずにインストール] をクリックします。
インストールが終わるまで待機します。インストールが終了したら、[インストール済み] タブで [TestComplete support plug-in] が正しくインストールされているか確認します。
TestComplete Jenkins プラグインのインストール
Jenkins は分散ビルドの実行をサポートするため、リモート コンピューターのジョブを Jenkins で実行できます。ビルドの後でスレーブ コンピューターを使って TestComplete テストを実行することも可能です。分散テストには、TestComplete distributed tests を使用することを推奨します。
スレーブ コンピューターで TestComplete テストやジョブを実行する前に、Jenkins ノードとして設定する必要があります。Windows サービスとしての接続では多くの問題が予想されるため、スレーブノードへの接続には Java Web Start を使用することを推奨します。
Java Web Start を使った Jenkins スレーブ エージェントの起動
Java Web Start を使った Jenkins スレーブ エージェントの起動
Java Web Start を介してノードに接続するには、Jenkins エージェントをスレーブ マシンで起動する必要があります。スレーブ コンピューターにログオンし、ブラウザーで http://<Master_Name>:8080/computer/<node_Name>/ を開きます。
Launch をクリックするか、コマンドラインから接続して起動してください。
Windows 8 以降を使用している場合、権限が足りず TestComplete を起動することができません。[File] | [Install as a service] を実行し、サービスにすることで起動できるようになります。
また、TestComplete のオプションにて Windows Store アプリケーションのテスト サポートを無効にすることでも起動可能です。
※サービスとした場合、Jenkins の TestComplete Test ビルド ステップで [Run interactive user session] オプションを有効にしておく必要があります。
TestComplete テストを実行する Jenkins ジョブを実行するには、TestComplete Test ビルド ステップを追加する必要があります。
テスト実行のためのノードの選択
テストを実行するノードに TestComplete もしくは TestExecute がインストールされている必要があります。ジョブがこのノードだけで実行されることを確認するには、下の [実行するノードを制限] のチェックボックスを有効にし、TestComplete テストを実行するノード名を指定します。
ファイルの準備とコピーのステップの追加
TestComplete Test ビルド手順を追加する前に、TestComplete プロジェクト ファイル、テスト対象のアプリケーション、およびその他のテスト関連のファイルやフォルダーを準備し、ノードの作業フォルダーにコピーする必要があります。ノードにこれらのファイルが存在しない場合、Jenkins はテストを実行できません。
事前にすべてのファイルをノードに移すことも可能ですが、単一もしくは複数のビルド手順を Jenkins のジョブに追加してすべての準備タスクを実行することもできます。例えば、ファイルをコピーするには CopyToSlavePlugin が使用できます。
TestComplete Test ステップの追加
[ビルド] セクションで [ビルド手順の追加] をクリックし、ドロップダウン リストから [TestComplete Test] を選択します。
TestComplete Test のビルド手順が表示されます。[Project suite file] フィールドでテストするプロジェクト スイート ファイル (.pjs) を指定します。パスは、ノード側の作業フォルダーに関連したパスを指定します。
実行するプロジェクト スイートのテストを選択します。
Entire suite – プロジェクト スイート全体のテストを実行します。
Project test –プロジェクト スイートの中の特定のプロジェクトのテストを実行します。
Script test – スクリプト ルーチンのテストを実行します。
Keyword test – キーワード テストを実行します。
Other – 特定のプロジェクト アイテムのテストを実行します。 [Project] フィールドにはプロジェクト名を、[Test name] フィールドにはプロジェクト アイテムの完全なパスを入力します。区切りには縦棒 (|) を使用します。たとえば Unit1 スクリプト ユニットから foo ルーチンを実行するには、Script|Unit1|foo と入力します。
[高度な設定] をクリックすると、 その他の TestComplete Test ステップの設定ができます。
Test runner – テストの実行に TestComplete と TestExecute のどちらを使用するかを指定します。どちらもインストールされていて [(Any)] が選択されている場合、TestExecute が使用されます。選択した製品はノードにインストールされている必要があります。
Version –TestComplete もしくは TestExecute のいくつかのバージョンがノードにインストールされている場合に、使用するバージョンを指定します。Jenkins は、デフォルトで最新バージョンを使用します。
Action on warnings – TestComplete のテスト ログに警告が含まれる場合にJenkins がビルド全体を失敗もしくは不安定とマークするか否かを指定します。
Action on errors – TestComplete のテスト ログにエラーが含まれる場合に Jenkins がビルド全体を失敗もしくは不安定とマークするか否かを指定します。
Additional line arguments – TestComplete にパスする任意のコマンド ライン引数を指定します。TestComplete のコマンド ラインの詳細は、「TestComplete Command Line」を参照してください。
Use test timeout – テスト実行の最長時間を秒数で指定します。最長時間に達してもテストが終了しない場合には、ビルド全体が失敗としてマークされます。
Run interactive user session – TestComplete テストの実行に対話型ユーザー セッションが使用されるか否かを指定します。Jenkins がサービスとして実行するときにこのオプションが選択されていなければ、TestComplete テストは失敗となります。このオプションは、TestComplete 10.60 以降のバージョンのみが対象となります。このオプションに関する詳細は、「Requirements」 を参照してください。
User – テストの実行に使用するユーザー名を指定します。
Password – ユーザー アカウントのログインに使用するパスワードを指定します。
Use active session – TestComplete テストの実行に対話型ユーザーセッションが使用されるか否かを指定します。このチェックボックスが有効な場合、TestComplete は実行中のセッションで実行されます。それ以外の場合には、すべてのアプリケーションを閉じてログオフし、指定されたユーザー アカウントでログオンしてテストを開始します。別のユーザーがログオンしている場合、ユーザー セッションは中断されません。
Generate MHT log file – このオプションが有効になっている場合、TestComplete はビルド完了後にテスト結果を .mht ファイルにエクスポートします。このファイルは、テスト結果を表示する Jenkins のページからダウンロードできます。
このオプションが無効になっている場合、TestComplete はテスト結果を MHT フォーマットでエクスポートしませんが、Jenkins で結果を確認することはできます。「Viewing TestComplete Test Results in Jenkins」を参照してください。
Generate JUnit-style report – JUnit スタイルのレポートを生成するか否かを指定します。Jenkins での JUnit レポートの表示方法については、「Viewing TestComplete Test Results in Jenkins」を参照してください。
この JUnit スタイルのレポートは、標準の JUnit レポートとは少し異なります。JUnit レポートを生成するには、/ExportSummary コマンド ライン引数を使用します。 手順の [Additional line arguments] で指定できます。 引数の詳細については、「TestComplete Command Line」を参照してください。
実行後は TestComplete Test Results からログを確認することができます。ログのダウンロード リンクも同じページに存在します。
設定は以上です。
詳細は下記ヘルプからもご確認いただけます。
Jenkins の準備:
https://support.smartbear.com/testcomplete/docs/working-with/integration/jenkins/preparing.html
テストの設定:
https://support.smartbear.com/testcomplete/docs/working-with/integration/jenkins/running-tests.html
※ Google Chrome で開き、右クリックのコンテキスト メニューの「日本語に翻訳(T)」 機能をご使用いただくと、機械翻訳された内容でご覧いただけます。