渋川です。
> > 正直な話、UIのテスト方法はまだ十分ではなく、課題であると思ってい
> > ますので、良いやり方があったら、テストカタログで紹介したいと考えて
> >います。
>
> そうなのですね。
> UIに関しても簡単でよい方法があればぜひ紹介ください。
いっそのこと、テストファーストしやすいGUIライブラリというものを考えてみ
るのも楽しいと思います。実際に作るかどうかは別にして、頭の体操に。
★アイディアその1
GUIライブラリ上で動くマクロ言語を搭載して、ユーザ操作等をシミュレーショ
ン。MS Officeで、VBAでテスト書くようなもんです。受入テスト用に。ユーザ操
作をマクロ化できれば、バグの発生パターンをユーザに作ってもらうこともでき
るかも。
★アイディアその2
テスト時は実際に画面に表示しないで、画面の値を見たり書いたりできるモード
を搭載する。Strategyパターンを派手にしたイメージです。
★アイディアその3
表示用のデータの参照しか持たないGUIツールキット。つまりGUIのライブラリ自
身は状態は持たず、モデルのデータを参照してその通りに表示する。つまりモデ
ル部分のテストだけでOK。単純な画面表示系ならば良いかも。ツリーコントロー
ルとかは大変そう。
ネタ元はFOXのデータターゲットです。
http://www.asahi-net.or.jp/~cv8t-hdk/fox/fox-doc.ja/datatarget.ja.html
★アイディアその4
リンクするライブラリを変えるだけで、CGIやHTTPサーバになってくれる(Window
を出す代わりにHTMLを出す)ようなお洒落なライブラリにする。そうすれば、
WebUnitとかを使って通常のGUIのテストもできる。作るの大変そう。.NETフレー
ムワークってこういう風になってるんでしたっけ?追っかけていませんが。
★アイディアその5
OSが発行するイベント、メッセージを、プログラマが同じように簡単に発行でき
る仕組みを整える。他のアイディアとセットかな。テストメソッドの中で、ウイ
ンドウをテスト用に初期化し、メッセージを送って、画面の表示内容をassert文
でチェック。
-----
東京工業大学 電気電子工学科
_/_/_/ しぶかわよしき JA6HFA/1 yoshiki@....jp
_/ http://www.shibu.jp http://www.unittest.org