マウスの動きも再現--強力なテストライブラリ:YUI Test Utility
沖林正紀
2007/10/22 12:53
Webブラウザ上で動作するアプリケーションをテストする際に、マウスのクリックやキー入力を再現するために専用のアドインを導入することもあるが、この方法はアドインが対応するWebブラウザでしか有効でない。YUIであればその手段がライブラリに含まれている。
テストケースの実行
テストケースを実行するには、先にTestLoggerというテスト用のログ出力コンポーネントを設定しておくとよいだろう。テストケースはTestRunnerに複数登録してまとめて実行することができる。リスト2で設定したテストケースを実行する例をリスト3に示す。TestLoggerによるログ出力は図1のようになる。
リスト3 テストの実行(リスト2の続き)
// ログ出力コンポーネント(<div id="logger"></div>の部分に表示)
var testLogger = new YAHOO.tool.TestLogger( 'logger' );
// 実行するテストケースを設定
YAHOO.tool.TestRunner.add( testCase1 );
// テストケースを実行
YAHOO.tool.TestRunner.run();
// 実行後のテストをクリア
YAHOO.tool.TestRunner.clear();
図1 TestLoggerによるテストログ出力
複数のテストケースをまとめる
TestSuiteで複数のテストケースをまとめる例をリスト4に示す。TestRunnerにはTestCaseと同じように登録し、リスト3と同じ方法で実行する。TestSuiteのコンストラクタ引数で区別しやすい名称をつけておこう。
リスト4 複数のテストケースをまとめるTestSuite(例)
// テストケースの設定(1)
var testCase2 = new YAHOO.tool.TestCase({
name : 'YUIによるテスト2',
testTrue : function() {
YAHOO.util.Assert.isTrue( 1 + 1 == 2 );
}
});
// テストケースの設定(2)
var testCase3 = new YAHOO.tool.TestCase({
name : 'YUIによるテスト3',
testTrue : function() {
YAHOO.util.Assert.isNaN( 'abc' );
}
});
// 複数のテストケースをまとめる
var testSuite = new YAHOO.tool.TestSuite( '複数のテストをまとめて実行' );
testSuite.add( testCase2 );
testSuite.add( testCase3 );
YAHOO.tool.TestRunner.add( testSuite );
// テストを実行(省略)
マウスの動きを再現
UserActionを用いると、テストケース実行時にマウスの動きやキー入力を再現してくれる。YUIが対応するWebブラウザであれば、自動的にユーザーによる操作とその反応をテストできる。Webブラウザにアドインを追加しなくて済むのは便利だろう。
ここでは、マウスのクリックとマウスカーソルをかざした状態を再現する例を示す。キー入力の再現などについては、オンラインドキュメントを参照していただきたい。
次ページ図2の中央に緑色の領域がある。ここはすぐ上の「テストするボタン」をクリックすると緑色に変わり、マウスカーソルをかざすと橙色に変わるようになっている。もう一度同じことをすると透明(transparent)になる。画面上に2つ横に並んだボタンをクリックすると、それぞれを再現するテストが実行され、その結果は画面下のコンポーネントに出力される。
- 特集: 強力AjaxライブラリYahoo! UI Library (8件)
- 今日のトップ記事
- 2日前
- 4日前
- 6日前
- 7日前
- ホワイトペーパー
- 読者投票
いよいよ7月11日に売り出される「iPhone 3G」。今のところの購入予定は?
- 話題のタグ
入門
SOA
Firefox
Apache
Google
フレームワーク
ブラウザ
Ruby
HTML
イロハ
server
リファレンス
PHP
Solaris
Python
Firefox 3
Webデザイン
MySQL
Safari
Internet Explorer
Apple
Microsoft
Opera
Adobe
Leopard
C/C++
Off Topic
Ajax
iPod touch
Linux
Mozilla
Eclipse
Mac OS X
Tips
小技
JavaScript
Database
Flash
CSS
開発環境
XHTML
ライブラリ
iPhone
オープンソース
仮想化
Windows
RIA
Webアプリケーション開発
iPhone 3G
Java
話題のタグを見る »
MS、Vistaとの互換性をチェックできる「Compatibility Center」リリースへ
「似非」SOAを見破る10の方法
Firefox 3のアドオンやテーマ管理を容易にする
openSUSE 11.0を試してみた
フォトレポート:世界各国の優秀な技術者がパリに集結--Imagine Cup 2008世界大会
バッチ処理でデータベース活用:4つの課題と5つの解決ポイント
Rubyでどう書く?:RubyでWord文書を作成する
ZDNet Japan Green IT
Techno Exchange
今知るべき仮想化情報
「未来の、その先」をどう提言していくか
DELL連載第4回〜「Microsoft System Center」