このセクションでは、ソース管理システムに SOAtest を接続する方法について説明します。
このセクションの内容:
ソース管理システムのサポートについて
Parasoft SOAtest 環境にプラグインするソース管理システムを使って、ソース ファイルとテスト ファイルを管理することができます。
下記のリストにある「サポートされるソース管理システム」をチームが使用している場合、適切な構成を行うことで Parasoft Test から次の操作を行うことができます。
- ソース管理システムのファイル リビジョン データを使ってコードの作成者を判定し、作成者と編集時刻に基づいて、タスクの再割り当てとテスト スコープの制限を行うほか、テストの失敗とポリシーの違反を担当者に自動的に割り当てる。詳細については「タスクの割り当てとコード作成者の設定」を参照してください。
- テストの前にソース管理システムからプロジェクトを更新する (テスト コンフィギュレーションの [共通] タブ > [ソース管理システムからプロジェクトを更新] を有効にしている場合)。
SOAtest には、次のソース管理システムをすぐに使用できるサポートが含まれています。
ベンダー | テスト済みバージョン |
---|---|
Git | 1.7, 1.8, 1.9, 2.x |
Microsoft Team Foundation Server | 2012, 2015, 2017, 2018, 2019 |
Perforce | 2006.2, 2015 |
Subversion (SVN) | 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 1.10, 1.11, 1.12, 1.13 |
ソース管理 API を使用して、他のソース管理システムと統合できます。「カスタム ソース管理システムの統合」を参照してください。
Subclipse プラグインのサポート
Subclipse プラグインの各バージョンは、それぞれ特定のバージョンの Subversion とだけ互換性があります。現在使用している Subclipse プラグインと、Parasoft Test がサポートする Subversion との間に互換性があることを確認してください。
たとえば、Subversion 1.3 と Subclipse プラグイン 1.2 をインストールしてはいけません。Subclipse プラグイン 1.2 が使用するのは Subversion 1.4 です。Subclipse 1.4.x は JavaHL/SVNKit の Subversion 1.5.0 を必要とします。Subclipse 1.4.5 はすでに Subversion クライアント アダプター 1.5.2 を持っています。
バージョン 1.4 よりも前の Subversion クライアントは、Subversion 1.4 が生成する作業コピーに対して作業できません。Subversion 1.4 に付属の Subclipse プラグイン 1.2 を使用している場合、次のエラー メッセージを受け取ることがあります:
svn: This client is too old to work with working copy '.'; please get a newer Subversion client
これは、Parasoft がバージョン 1.3 以前のコマンドライン クライアントを使用していることを意味します。解決方法は、コマンドライン SVN クライアントをバージョン 1.4 に更新することです。次のコマンド コマンドを実行すると、クライアントのバージョンを確認できます。
svn --version
ソース管理システムのサポートを有効にする
使用するソース管理システムのサポートを有効にするには、次の操作を行います。
ソース管理システムのコマンドライン クライアントを環境変数の PATH に必ず設定して、SOAtest の起動時に利用可能にします。
例えば Subversion がある場合、Eclipseに Subclipse プラグイン (SVN Eclipse プラグイン) をインストールするのは不十分です ( Subclipse のインストールは必須ではありません)。 コマンドラインの Subversion クライアント ( svn.exe ) を使用するべきです。
- [Parasoft] > [設定] を選択します。[設定] ダイアログが表示されます。
- [Parasoft] の下の [スコープと作成者] をクリックします。
- [ソース管理システムを使ってスコープを計算] チェックボックスをオンにします。
- [Parasoft] の下の [ソース管理] を選択します。
- 「チーム間での SOAtest の構成」に従って適切なリポジトリをすでに設定している場合、ユーザーとパスワードを入力します。ソース管理システムのクライアント実行ファイルへのパスをまだシステム パスで設定していない場合は、このパスも入力します。
適切なリポジトリをまだ設定していない場合 (「チーム間での SOAtest の構成」の自動設定プロセスを参照)、以下の手順に従って設定します。- 使用するソース管理システムを有効にし、ソース管理システムのクライアント実行ファイルへのパスを指定します。実行ファイルのパスがすでにシステム パス上にある場合は、実行ファイルのパスを指定する必要はありません。
- リポジトリのプロパティ フィールドで [新規] をクリックし、選択したソース管理システムに必要なソース管理プロパティを入力します。
- [OK] をクリックして [ソース管理システムの説明] ダイアログに戻ります。
- 変更を確認して [OK] をクリックします。
ソース管理システムとの統合をテストするには、次の操作を行います。
- Parasoft の環境で、リポジトリからチェックアウトしたプロジェクトを開きます。
- エディターでファイルを開きます。
- ソース コードを右クリックし、ショートカット メニューの [Parasoft] > [行の作成者を表示] をクリックします。作成者が表示された場合は、ソース管理システムと Parasoft Test は正常に統合されています。
トラブル シューティング
SOAtest に付属の JAR を指定することで、デバッグ ログを有効にし、ソース管理システムとの統合の問題をトラブルシューティングできます。
-consolelog J-Dparasoft.logging.config.jar.file=/com/parasoft/xtest/logging/log4j/config/eclipse.on.xml
詳細なログがコンソールに出力されます。ソース管理システムからのメッセージを含めるには、次のフラグを使用します。
-Dscontrol.log=true
Dscontrol.log
フラグを使用した結果の出力には、ユーザーのソースコードの一部が含まれている可能性があります。
SOAtest に付属の JAR の代わりに、parasoft.logging.config.file
システム プロパティを使用して、ディスク上の log4j ファイルを指定できます。
-consolelog J-Dparasoft.logging.config.file=<PATH_TO_LOG4J_FILE>
Git の構成
接続する Git リポジトリは、匿名でのプルを許可する必要があります。
- コマンドプロンプトを開き、リポジトリのクローンを作成します。
git clone <repository>
- git URL から実行する場合、Git でチェックインされたテスト ケースを自動的にプッシュするには、
git push
URL を設定する必要があります。git config remote.origin.pushurl git@<your repository URL>
- 新規作成したリポジトリの
user.name
をgit config
で設定します。git config user.name "<your username>"
グローバル git user.name がすでに設定されている場合は、このステップを省略できます。この user.name は DTP のユーザー名と同じでなければなりません。
ソース管理システムのサポートを有効化している場合、[ソース管理システムの説明を作成] ダイアログで以下のリポジトリ プロパティを指定します。
- URL: プル/プッシュするリモート リポジトリの URL を指定します。プルおよびプッシュが無効な場合、このフィールドは空のままにします。すべての git URL を使用できます (例: git://host/repository ssh://user@host user@host)。git コマンドラインはフラグ付きのクレデンシャル設定をサポートしていないため、ssh などの通常は認証を要求するプロトコルの場合、ID ファイルを設定してクレデンシャルがなくてもログインできるようにするか、匿名での接続が許可されるようにする必要があります。
- ブランチ: ソース管理モジュールが使用するローカル ワークスペース内のブランチ名を入力します。このフィールドが空の場合、現在チェックアウトされているブランチが使われます。
- 作業フォルダー: ローカル git リポジトリのルートを入力します。
Shallow Clone
.git/shallow
ファイルが存在する場合、Git リポジトリは shallow と見なされます。リポジトリから shallow clone をチェックアウトした場合、Git が作成者データを正確に生成しない可能性があります。正確な作成者情報を取得するには、full clone をチェックアウトする必要があります。
Perforce の構成
ソース管理システムのサポートを有効化している場合、[ソース管理システムの説明を作成] ダイアログで以下のリポジトリ プロパティを指定します。
- サーバー: Perforce サーバーのマシン名と IP アドレス。
- ポート: Perforce サーバーのポート
- ユーザー: リポジトリに接続するときに使用するユーザー名
- パスワード: ユーザーのパスワード
- クライアント: P4CLIENT 環境変数またはそれに相当する変数で指定しているように、クライアント ワークスペースの名前を入力します。
Subversion の構成
Parasoft Test の Subversion のサポートはコマンドライン クライアント 'svn' に基づきます。サポートされているSVNバージョンのリストについては About Source Control Support を参照してください。
クライアント証明書を Subversion のコンフィギュレーション エリアに格納している必要があります。Subversion クライアントには、ディスク上の認証証明書にアクセスするためのビルトイン システムがあります。デフォルトでは、コマンドライン クライアントがサーバーでの自分自身の認証に成功するたびに、クライアントはユーザー個人のランタイム コンフィギュレーション エリアに証明書を保存します。UNIX では ~/.subversion/auth/ であり、Windows では %APPDATA%/Subversion/auth/ です。
ソース管理システムのサポートを有効化している場合、[ソース管理システムの説明を作成] ダイアログで以下のリポジトリ プロパティを指定します。
- URL: SVN サーバーの URL。URL にはプロトコル、サーバー名、ポート、および開始リポジトリ パスを指定します (例: svn://buildmachine.foobar.com/home/svn)。
- ユーザー: リポジトリに接続するときに使用するユーザー名
- パスワード: ユーザーのパスワード (暗号化されていないパスワード)
Team Foundation Server の構成
サポートされるバージョンについては About Source Control Support を参照してください。
SOAtest for Eclipse と TFS を統合するために追加のソフトウェアをインストールする必要はありません (必要なライブラリはインストールに含まれています)。
ソース管理システムのサポートを有効化している場合、[ソース管理システムの説明を作成] ダイアログで以下のリポジトリ プロパティを指定します。
- URL: Team Foundation Server リポジトリの URL を入力します (例: http://localhost:8080/tfs)。
- カスタム証明書の使用: カスタムの TFS 証明書を提供する場合、このオプションをオンにします。このオプションを指定しない場合、システムの証明書が使用されます。
- ユーザー: ユーザーの名前。
- パスワード: ユーザーのパスワード。
デフォルトでは、SOAtest は TFS にアクセスするためにキャッシュされた証明書を必要とします。これは、ユーザー ログイン情報や何らかの以前のログイン情報です。キャッシュされた証明書ではなく、カスタム証明書を使用することも可能です。
ローカル設定ファイルからのソース管理システムの定義
ローカル設定ファイルを使って、ソース管理システムの定義を指定できます (たとえば DTP によってチーム全体の設定を共有したり、コマンドラインでオプションを指定したりするために)。詳細については「ローカル設定の指定」を参照してください。