18 March 2008

【UIA】UI Automation を用いたユーザーインターフェイスのテスト - 序

※今回は、UI Automation の紹介です。次回に UI テストでの活用方法をご紹介します♪
※本投稿の下部に追記があります。

皆さん、UI Automation というのは、ご存知でしょうか?
UI Automation は、GUI の支援技術(Assistive Technology)の機能や製品の実装と自動テスト フレームワークのための共通したライブラリ群になります。

詳細については、下記をご覧ください:

長沢的に、一言でいうと、「GUI を外部のプログラムなどから操作することができる技術」です。これが Windows プラットフォーム間の共通のモデルで提供されるため、障害者をサポートする支援技術の開発や UI のテストの自動化ツールの開発などで役立てることができます。

これを用いて、たとえば、データを入力し、ボタンをクリックしたら、結果がどう返ってきてほしい(UI がどう変化してほしい)といったテストを行うことができるようになると期待されます。

それができるわけです。単体テストでは、クラスライブラリなどのメソッド単位でのテストについては申し分ないのですが、UI が絡んだ動作のテストで実施するには、なかなか難しい面があります。もっといってしまうと、イベントハンドラに直接ビジネスロジックが記述された VB 5.0/6.0 でよくおこなわれていた記述の仕方だとそのロジックのテストが行いづらいわけです(private なメンバーですしね)。VS2008 の単体テスト機能では、private なメンバーのテストを行えますが、これは UI のテストではなく、あくまでも内部のビジネスのロジックに対するテスト(の一部)になります。たとえば、実際に受け渡しされる EventArgs などがロジック上に絡んでいるとテストできないですね。

実は、このあたりも、昨年末から本年頭まで実施していた MSDN オフラインセミナー 全国ツアーでは、披露していました(開催地区によっては披露できなかったところもあります。ごめんなさい)。

次回の投稿では、UI Automation を単体テストコードの中で呼び出すことで、GUI アプリケーションを操作して、UI のテストを行うひとつのやり方をご紹介します。お楽しみに♪
明日は、名古屋へ Go! なため、投稿は今週中にはと思っています・・・。

以下追記(2008.03.18 22:00):
# すっかり忘れて投稿してしまいました (^^;

UI Automation ですが、先日開催された MIX08 にてSilverlight 2 のサポートが発表されました!
詳細はこちらをご覧ください(英語)。

Accessibility ですが、今後のアプリケーションの在り方として、欠かすことができないものになってきています。ぜひこの辺りについてもキャッチアップしていただければと思います。
# もちろん、長沢もまだまだキャッチアップできていません (^^;

 



ながさわともはる

Filed under:
 

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

# 長沢智治のライフサイクルブログ said:

序: UI Automation の紹介 第1回: ソースコードの入手方法の紹介 第2回: WPF アプリケーションにおける Accessibility 設定 第3回: 単体テストで UI Automation

28 March 08 at 4:56 AM
# 長沢智治のライフサイクルブログ said:

序: UI Automation の紹介 第1回: ソースコードの入手方法の紹介 第2回: WPF アプリケーションにおける Accessibility 設定 第3回: 単体テストで UI Automation

31 March 08 at 11:41 PM
# 長沢智治のライフサイクルブログ said:

序: UI Automation の紹介 第1回: ソースコードの入手方法の紹介 第2回: WPF アプリケーションにおける Accessibility 設定 第3回: 単体テストで UI Automation

02 April 08 at 12:38 AM
# 町田 健治 said:

見よう見まねで、プログラムお書いております。

UI Automation も、ずいぶん以前に伺っております。

長沢さんの、このサイトは大変貴重です。

ありがとうございます。

13 September 09 at 9:55 PM
# Tomoharu Nagasawa said:

町田さん、

コメントありがとうございます!

少しでもお役に立ててなによりです。あまり知られていないけど、知っておいてほしいと思ったものを取り上げていきたいと思っています。

今後とも、よろしくお願いいたします。

長沢

13 September 09 at 9:59 PM

Leave a Comment

Comment Policy: No HTML allowed. URIs and line breaks are converted automatically. Your e–mail address will not show up on any public page.

(required) 
(optional)
(required) 

  
Enter Code Here: Required

About Tomoharu Nagasawa

長沢智治(Tomoharu Nagasawa).....ソフトウェア開発業務改善のプリンシパルコンサルタント、ソリューションアーキテクトを経てマイクロソフトのエバンジェリストへ。.....専門は、ソフトウェア開発プロセス、プロセス改善。.....今はまっているのは、"Oslo"。.....長沢へのコンタクトは・・・http://blogs.msdn.com/tomohn/contact.aspx ・・・からいつでも歓迎です。
Page view tracker