上田@北のキラ星です。
JaSSTのレポートを書きたいと思います。
ワタクシ的には何といっても「智美(さとみ)塾」です。
この為にわざわざ津軽海峡を渡ったといっても過言ではありません。
今回のテーマは「テストアーキテクチャ」
・・・余り聞きなれない言葉ですね。
アーキテクチャ・・・
アーキテクチャ・・・
アーキテクチャ・・・
カッコイイ!!!!!!
要はテストの最上位設計のことかと思います。
以下、間違いがあれば、ご指摘下さい。
理解した範囲で書いてみます。
# 当日配布資料が貰えなかったので、記憶とノートを頼りに書いてます。
まず・・・・
テスト観点は
「テスト対象」と「テスト目的」で成り立っています。
そのセットを『テストフレーム』と定義。(カッコイイ!)
さらに、その「テストフレーム」の集まりを
『テストバスケット』と定義。(カッコイイ!)
「目的」とは、「バグを見つける視点」の事。
自分が思いつく限りでは・・・
・レイアウトの確認をしたい
・レスポンスを確認したい
・正常系の仕様の動作確認をしたい
・ユーザビリティを確認したい
・データ量の異常系確認をしたい
・・・みたいな感じかな。
さまざまな視点から品質を確認する「眼」のことかなと。
「対象」はそのまま、「テスト対象」のことかと思います。
一般的な「機能分析」で導かれるものは「対象」になるのかと。
ポイントは、対象を分割して「関係性」を考えると
整理しやすくなるということ。
同じ機能はグループ化したほうが良かったりという事ですね。
ちなみに「対象」と「目的」の最大の違いは
「対象」は使い捨て
「目的」は使いまわせる
と秋山さんが仰ってました。
「対象」は案件ごとに異なります。
ありゃあそうですね。テスト対象が変わるのだから。
でも「目的」は抽象化されているので、案件ごとに
ある程度汎用性が持たせられるのかなと。
なので使いまわせる。
逆に言うと、汎用的な使いまわせるように
「目的」を考えないといけないのかなと。
で
テストフレーム(=目的+対象)は
テスト設計の【INPUT】となるわけです。
そして、目的と対象を集めると
「テストタイプ」
になります。
# 上田の疑問
# テストバスケットとの違いが、理解できてません・・・
そして、目的と対象を抽象化したスーパークラスが
「テスト観点」
になります。
テスト観点は「テストの関心ごとの列挙」
ということです。
以下、上田の考察をキーワードで。
--------------------------------------------------
【抽象的】
↓テスト観点(関心ごと・心・動機)
↓テスト目的(何をしたいのか?・そのための視点・見る角度・見る距離)
↓テストタイプ(目的を果たすための具体的なテスト戦略)
【具体的】
--------------------------------------------------
・・・あってるかな?
そして、このアーキテクチャから「テストの厚み」を考えます。
テスト全体を俯瞰して「バランス」をとります。
たぶん、ここが重要な作業なんじゃないかと思います。
テストアーキテクチャの「メタモデル」を考える事によって
色んなテストエンジニアの行っているテストアーキテクチャ技法を
分析したり比較したり、さらには改良したりできるわけです。
世の達人たちの技をシンプルなモデルで理解できるようになるのでしょう!
そこから自分の技法を編み出すもよし、テーラリングするもよし、
達人の「頭の中」を覗き見るもよし!
・・・・・・・・・・・
そして、この智美塾で議論された「アーキテクチャ」の考えを元に
3名の塾生がGmailをお題にそれぞれのテストアーキテクチャを発表しました。
感想としてはマトリクスが多かったですね。
縦に「対象」を列挙して、横軸に「目的」を並べたものが多かったような。
なんとなくスープカレー表に似てますね(笑)
所感ですが、「テスト分析」というと「機能分析」のことだと思ってる方が
結構居ると思います。
# 私がそうでした
これってつまりテストアーキでいう「対象」のそれも一部にしか過ぎなくて、
塾生の方のマトリクスやスープカレー表の縦軸のそれも一部しか考えてないんですね。
そこに「目的=WHY」を加える事によって、目的を持った(心をもった)テストが出来るのかなと。
考えてみれば・・・・
「アドレス帳表示ボタン」
ってのは只の機能(=対象)であって、それが
テスト対象になるわけじゃないんですね。
そこに「心」を注入する事で初めて「テスト対象」になるのかと。
・・・
ああ、また長文になってしまった!
次回も智美塾があるなら・・・
はるばる7つの海を渡って東京に行きたいと思います。
スープカレー方式にもフィードバックしたいな!
以上です


