Ranorex 基本機能 #4 外部ツール(SVN、Jenkins)連携機能

本シリーズではRanorexの機能を使用してテスト作成の効率化、及びテスト実行の自動化や同時実行によりテスト消化を加速する方法をご紹介してきました。しかし、実際の開発現場では、開発に付随する開発以外の業務がネックとなり、本来の業務の作業効率が下がってしまっている方が非常に多いのが現状であると思います。

今回は、こうした開発者のオーバーヘッドに対し、Ranorexを外部ツールと連携させることで開発者のリソースをテスト業務に集中させる方法についてご紹介します。

SVN(Apache Subversion)との連携

開発中に以下の問題に直面したことがある方はいらっしゃいますか。

テストプログラムの構成管理が原因となる問題の例

  • テスト対象アプリケーションとテストプログラムを一緒に構成管理していなかったため、過去のバグ修正や仕様変更に対応したテストプログラムがどれか分からなくなり作成しなおした。
  • テスト完了したが、使用したテストプログラムのバージョンが間違っており、再度テストをやり直す必要が生じた。
  • テストプログラムのプロジェクトを丸ごとバージョン管理していなかったため、テストプログラムのビルドエラーが生じ、エラー解決に時間がかかった。

RanorexにはGitやSVN、TFSとの連携機能が用意されています。本記事ではSVNとの連携を例にこれらツールとの連携方法についてご紹介いたします。

RanorexではSVNのGUIクライアントソフトとして非常によく使われているTortoiseSVNと連携することで、SVNにアクセスすることができます

図1 プロジェクトの新規作成画面

Ranorex Studioにおいて、メニューバーの「ファイル」→「新規作成」→「ソリューション」と順に選択すると、プロジェクトの新規作成画面(図1)が表示されます。図1の画面において右下の「ソース管理に追加」にチェックを入れ、「作成」ボタンを押すと、ソース管理ウィザード(図2)が表示されます。

図2 ソース管理ウィザード

「Subversion」を選択し、「選択」ボタンを押すと、TortoiseSVNの認証画面(図3)が表示されます。(※PCにTortoiseSVNがインストールされている場合のみ)後は通常のTortoiseSVNと同じ流れで構成管理を行うことができるようになります。

図3 認証画面
図4 登録するファイルの選択

また、プロジェクト画面からSVN機能を利用する場合は、Ranorex Studio上の左に表示されている「プロジェクト」タブ上で該当するプロジェクトを右クリックする(図5)ことで利用することができます。

図5 プロジェクト画面からSVN機能を利用する

なお、このSVNとRanorexとの連携に関するオプションはRanorex Studio→ツールバー「ツール」→「オプション」から設定することができます。(通常のSVNの設定は図5の「SourceControl」(ソース管理)→「設定」から設定可能です。)

Jenkins連携

さて、開発現場ではテストプログラムの構成管理を実施しても解決しないオーバーヘッドがあります。

開発業務でのその他のオーバヘッド要因の例

  • テストプログラムのビルド、自動テスト実行中の待ち時間
  • ビルド、自動テスト開始操作を実施することにより他の業務が一時中断され業務効率が下がるロスタイム

Ranorexでは継続的インテグレーションツールとして非常によく利用されている、Jenkinsとの連携を行うこともできます。Jenkinsと連携することでソフトウェアのビルドからRanorexによる自動テストの実行、Ranorexテストレポート作成までを自動で実施することができるようになります。こちらについては、過去に当ブログで取り上げておりますので、詳細は下記をご参照ください。


Blogで取り上げたJenkinsとRanorexの連携に関する記事記事を見る

  1. Jenkins CIプロセスへのRanorexオートメーションの統合
  2. xUnit を使用した Jenkins などの CI ツールと Ranorex レポートの完全な統合

なお、JenkinsにはJenkinsエキスパートによる回数無制限のテクニカルサポートの付いたEnterprise向けの有償版(参考サイトを見る)もございます。こちらも合わせて御確認ください。

Ranorexをこれらの外部ツールと連携させることで、開発者はより本来の開発業務やテスト業務に集中できるようになると思います。本来の業務に集中できればさらなるソフトウェアの品質向上や工数削減、ひいては会社の信頼向上や業績向上に繋がりそうですね。Ranorexの外部ツールとの連携機能をぜひお試しください。