(2014/4/7更新)
最初にこのブログをアップした時点ではV12.00でしたが、現在、12.02がリリースされております。
ここからはじめようのUFT1回目をみて評価版をダウンロードしていただいた方は、
現在ダウンロードするとバージョン12.02がダウンロードされます。
これに伴い、若干追記をします。
この以下のブログでは、サンプルアプリがActiveXで記録できるものでしたが、
12.02から新サンプルアプリに変わりました(以下が新サンプルアプリのトップ画面)。
アプリケーション自体は元のブログ記事と同様に航空チケットを代理店から予約するときにオペレータが各航空会社のチケット空き状況の確認し、予約するときに利用することを想定したアプリケーションで操作も同じです。
ただし、Readmeをみてもらうと分かるように、このアプリはWPF(Windows Presentation Foundation)で作成されています。
ということで最初にインストールする際にWPFアドインを追加インストールしておく必要があります。
そして起動時にWPF アドインをチェックして起動します(下図)。WPFアドインの場合、Webアドインもチェックが必須です。
はい、これで準備完了・・・実際に元もブログ同様に記録をすると以下のように記録ができる事が確認できるはずです。
いやぁ~めでたしめでたし・・と思うのはまだちょっと先です。
実は、以下の購入チケットリストが表示される画面(下)を記録すると記録がうまくいかないので再生がこの箇所で止まるという現象に遭遇すると思います。
実は、この部分がWPFの「WpfTable」で作成されているのですが、UFTではデフォルトではこのWpfTableが記録できない設定になってます。
そこでこれを記録できるようにするために管理者権限でレジストリを設定します(ということでここもインストール時の管理者権限がある時にさくっとやってしまいましょう)。
UFTをインストールしたマシンの「プログラムとファイルを検索」のところで
Regedit
と入力してみましょう。これはレジストリを表示・編集ができるレジストリエディターというツールなんです。
さあ、次のようにレジストリエディターが開きましたか?
では、ここから左のツリーを辿って、次のレジストリ情報を開いて見ましょう。
HKEY_CURRENT_USER\Software\Mercury Interactive\QuickTest Professional\MicTest\Packages\WpfPackage\Settings
こんな感じに表示されるはずです(↓)。
ここに上図のように、IgnoreDetectorがない場合は、作成してもらい、そこにDWORDを追加します。
DWORDの値はUFTがインストールされている.NETのバージョンにあわせて追加します。
「.NET 3.5」であれば、"Microsoft.Windows.Controls.DataGrid"
「.NET 4.0」であれば "System.Windows.Controls.DataGrid"
とDWORDを追加して、値(Value)はどちらも"1"にします(こんな感じです↓)。
はい、これでレジストリエディタでの編集が終わり、UFTでWPFのWpfTableオブジェクトが記録できるようになりました。
一度、UFTを終了しOSを再起動して再度、記録をしてみてください。
ちゃんとテーブル内のセルレベルで記録ができますね!(↓)
では、これを踏まえて以下の元のブログをお読みください!
え?元のブログにある旧サンプルアプリでやりたい??そうですか、ありますよ!バージョン12.02でもインストールされてます。
<UFT をインストールしたフォルダ>\samples\flight\app\flight4a.exe
にありますので旧サンプルアプリでも記録ができますので、そのままブログの手順が使えます。
では、また!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
まずは、前回インストールしたUFTを起動してみましょう。前回の手順でインストールされたのであれば、皆さんのデスクトップ上にはUFTのアイコンがあるはずです。みてみてください。
ありますね?では、それをダブルクリックしてみてください。すると次のようなアドインマネージャというウィンドウが起動してくるはずです。これは、UFTで対応している開発テクノロジーのアドインをこのウィンドウで選択する必要があることを意味しています。
今回のサンプルアプリケーションはActiveXだけでいいので、ActiveXにチェックをして「OK」をクリックしましょう。
ちなみに、UFTで対応してるといわれたのにこのリストにない、と思われる開発テクノロジーがある場合は、アドインを追加でインストールすることで対応できます。まずは、対応しているかどうかはそのバージョンのPAM(Product Availability Matrix)を見ていただければと思います。購入前の検討段階であれば、弊社の貴社担当営業まで気軽に問い合わせください。
では、次に進みましょう。アドインマネージャで「OK」をクリックして進むと、UFTのデフォルト起動画面が表示されます(次の図を参照)。
では、さっそく使ってみましょう!ツールバーから「ファイル」-「新規」-「テスト」を選択して、新規のテストスクリプト作成の準備をします。
クリックすると、次のように「新規テスト」ウィンドウが開くので、まず、今回は画面系のテストを対象にするので「GUIテスト」を選択してハイライトし、テストスクリプトにつけたい名前や保存場所(デフォルトでユーザーフォルダ直下にUnified Functional Testingというフォルダをつくります)を指定して「作成」をクリックしましょう。
では、いよいよ記録をしていきましょう。ツールバーの下図の位置をみてみてください。オーディオ機器でみなれたマークの赤い丸の形をしたボタンがあると思います。これが記録開始のボタンです。クリックしてみましょう。
おっと、次のような画面がでてきますね。すんなり記録に入らせてもらえないようですが、もう少しつきあってください。この「記録と実行環境設定」ウィンドウは現在起動している対象のアプリケーションを使って記録するか、もしくは、指定したパスにあるアプリケーションをUFTが記録開始時に自動で起動して記録を開始するかという設定をする画面になります。
今回は、自分でスタートメニューからアプリケーションを選択して起動するところも記録するので「開かれているWindowsベースのアプリケーションすべてでテストを記録して実行する」を選択しましょう。選択したら「適用」をクリックします。次に「OK」をクリックしましょう。
いよいよ記録がスタートしました。皆さんのデスクトップ上に次のようなツールバーがフロート状態になっているのがみえませんか?
このツールバーは記録中表示されるもので、このツールバーで記録モードやチェックポイント、アクション作成などができますが、今はデフォルトのこのままで続けましょう。
次に、対象となるサンプルアプリケーションを起動させましょう、Windowsのスタートボタンから下図のように「HP Software」-「HP Unified Functional Testing」-「Sample Applications」-「Flight GUI」をクリックしましょう。
どうですか?ちょっと余裕があるのであれば、UFTのスクリプトが記録されるところをみてみてください。皆さんが起動したアプリケーションの操作が記録されてますよね? このようにスクリプトを自身で書かなくても操作をキャプチャできるのでキャプチャリプレイツールと言います。
アプリケーションに触る前に、このFlight GUIというサンプルアプリケーションについて説明しておきます。このサンプルアプリケーションは航空チケットを代理店から予約するときにオペレータが各航空会社のチケット空き状況の確認し、予約するときに利用することを想定したアプリケーションになります。
では、この起動画面でログインするのに必要なIDとパスワードを入力してみましょう。
どちらも「mercury」と入力してみてください。入力できたら「OK」をクリックします。
すると、フライトチケット予約アプリケーションのメイン画面が開くので、空路のチケット空き状況を確認するために、下記図のように「Date of Flight(出発日)」、「Fly From(出発地)」、「Fly To(到着地)」を入力してみましょう。
今回はここまでの処理で停止してみましょう。ただし、このまま停止すると、毎回修了するときに画面に入力途中のものが入力されたままですので、一度初期化してから修了しましょう。一番左上のボタンをクリックして、入力した情報をキャンセルしましょう。
ここまで操作をしたら、フロートウィンドウの停止ボタンをクリックして記録を停止します。下の図で示したように一番左の四角ボタンが停止のボタンですので、クリックしてください。記録がとまりましたね?
停止させると、UFTの画面が自動的にあがってくるはずです、操作が自動的に記録されているはずですので、次のようにスクリプトが記録されているか確認してみましょう!
スクリプトという割には、プログラムコードチックではなく、操作対象(オブジェクトって呼びます)をどのように操作するか、値を入力するか、というシンプルな構造で表記されていますね。これはUFTは、「キーワードドリブン」というメソドロジーを採用しているため、このように誰がみてもわかるものになっています(キーワードドリブンについては、ここでは説明しませんが、興味があったらご自身で調べてみてください)。
また、UFTには、このキーワードドリブン型の記述以外に、VBSを使ってコードを書いていく方法もでき、どちらからでも切り替えることができるようになっています。
では、さっそく、皆さんがキャプチャしたスクリプトを実行してみましょう!記録のときと同じくツールバーにある記録ボタンの横の三角アイコンが「実行」ボタンです。クリックしてみましょう。
するとなにやら、次のポップアップウインドウがでてきましたね。これは、実行したときのレポート(ログ、テスト結果)の残し方について聞いてきています。毎回実行結果を保存したい場合は、上のラジオボタンの「新規実行結果フォルダ」をチェック、スクリプトを編集中などで結果は前回の上書きでいいという場合は、「一時実行結果フォルダ(古い一時結果に上書き)」をチェックして「実行」をクリックしてください。
そうすると、どうです?
はじましたよね??皆さんのデスクトップ上で先ほど記録したFlightGUIが起動して、操作も同じように自動実行されていくのがわかりましたか?
スクリプトも短かったので、あっという間に終わったかと思います。では、修了したら、自動で次のレポート(Run Result Viewerという名前がついたレポートツールです)画面が表示されるかと思います。
画面から下図のように「すべて展開」をクリックしてみましょう。
すると、各スクリプトの操作単位(ステップといいます)までドリルダウンされて表示されましたね?
下の図のようになっていれば私と同じ結果になっているという事になります。
このレポートには、各ステップ単位での結果、実行時間、全体の実行時間、終了時間、合否判定といった情報が含まれています。エビデンスとして画面を記録することや、今回は設定しませんでしたが、期待値との比較や、動画を記録しておくといったこともできます。
これで一通り、簡単な記録から実行までを経験していただいた事になります。
作っていただいたスクリプトを保存して修了することにしましょう。まず、ツールバーの下図にあるフロッピーのアイコンが「保存」ですので、これをクリックしてください。保存が更新されましたね。
では、UFTを閉じましょう。「ファイル」-「修了」をクリックしてください。
問題なくUFTのウインドウが閉じれば無事修了です!
皆さん、お疲れ様でした。これをベースに次のステップとして、UFTにはチュートリアルがあるので、これを試してみてください。データドリブンなどいろいろな機能が学習できるようになっていますので是非チャレンジしてみて下さい。
では、今日はここまで。また次回!