テストレベルについて

テストレベルについての議論をまとめました。 2012.1.17 お昼の議論を追加しました。
10
弦音 @tulune

なんで大きくしていくんですか?例えば、一番左の箱はみんな同じ?

2012-01-17 12:32:00
あきやま🍠 @akiyama924

@mkoszk 同じなんじゃない? 縦型は、□→(□→□)→(□→□→□)→(□→□→□→□)なのでは?

2012-01-17 12:32:03
鈴木三紀夫 @mkoszk

はい、湯本さんの意見は同じというものです。違いがあったら、設計から見直すべきだというもの。僕の意見はそれは正論だけど現実と乖離しているというもの “@akiyama924: @mkoszk 同じなんじゃない? 縦型は、□→(□→□)→(□→□→□)→(□→□→□→□)なのでは?”

2012-01-17 12:34:56
鈴木三紀夫 @mkoszk

@tulune 湯本さんの縦の箱(□)の大きさは、上が大きく下が小さいものです。(段階的詳細化だから) 僕の横の箱(□)は、だいたい同じ大きさを意識しています。秋山さんが言うように、同じはずなんですけどね。

2012-01-17 12:37:35
弦音 @tulune

@mkoszk んー、もうちょっとちゃんと伺わないとわかんないです。横はそれぞれどう成長していくの?開発のイメージと一緒?

2012-01-17 12:41:06
鈴木三紀夫 @mkoszk

湯本さんの階層と僕の横繋がりの対応ができていなかったので、質問が来たのですね。書き直し。 □ ↓ □ ↓ □ ↓ □ ↓ □ の違いと (□→□→□→□→□) (□→□→□→□) (□→□→□) (□→□) □ の違い。

2012-01-17 12:41:38
鈴木三紀夫 @mkoszk

@tulune 例えば、システム→サブシステム→プログラム→関数があるとします。プログラムテストの後にサブシステムテストになりますが、いきなりサブシステムテストでは大きすぎるので、ITa、ITbと分けたとします。

2012-01-17 12:46:01
弦音 @tulune

@mkoszk ごめん、ますます混乱。。なんとなくわかるんだけど、具体的にわかんない。上が開発のどっちに相当するの?

2012-01-17 12:46:36
弦音 @tulune

@mkoszk 横の四角の例を一つ、挙げていただければわかりそう。

2012-01-17 12:48:39
鈴木三紀夫 @mkoszk

@tulune 湯本さんの意見では、サブシステムとプログラムの間に必要な詳細化が無かったので、サブサブシステムの設計を間に入れて、テストの実態と合わせるべきだというもの。僕の場合、理屈は分かるけどそれを現実に対応させるのは、かなりの障壁があるのではないかというもの。

2012-01-17 12:48:56
鈴木三紀夫 @mkoszk

@tulune 湯本さんのイメージだと システム ↓ サブシステム ↓ プログラム ↓ 関数 ここまではOK?

2012-01-17 12:51:00
鈴木三紀夫 @mkoszk

@tulune 僕の箱(□)は、関数だと思ってもらってよいです。概念的に一つずつしか繋げていませんが、本当はもっとたくさんの繋がりがあります。正確に記述するには、 (((□→□)→(□→□))→((□→□)→(□→□))) のように書けるかな。括弧の名称はプログラムやサブシステム

2012-01-17 12:54:09
弦音 @tulune

@mkoszk あ、やっとわかりました。私、プロセスみたいなこと考えてたんです。もう少しまとまりましたらお話ししますね。ありがとでした。

2012-01-17 12:57:00
あきやま🍠 @akiyama924

@mkoszk ざっくりとしたテストレベルは開発に合わせて考えるけど(湯本さん式)、現実としてはテストを実施して段階的に品質を取っている(三紀夫さん式)のでしょうね。

2012-01-17 13:04:12
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm

毎週のようにテストレベルの話が出てきていて、TLを見るのが楽しくて仕方ないです。 [うさみみ*´×`*エンジニア]

2012-01-17 13:07:58
鈴木三紀夫 @mkoszk

@akiyama924 湯本さんの想いは、テストだけでなく開発全体を良くしていかなくちゃいけない、テストだけの改善ではなく開発の改善に繋げなければいけない、というもの。方向性は僕も同じなんだけど、どこから改善に着手するか、スピード感、火消し度合いなどの感覚が異なる感じかな。

2012-01-17 13:09:22
鈴木三紀夫 @mkoszk

@kyon_mm 湯本さんの意見に添うと、単体/結合の二つしか定義されていないのに、現場では5段階ぐらいステップを踏んでテストを行っていたとします。その場合、記述量は少なくても構わないので、5つの仕様書や設計書が必要だというもの。

2012-01-17 13:13:19
鈴木三紀夫 @mkoszk

@kyon_mm 自動化の絡みがあるので、画面を直接操作するテストと、画面の前にフックをかけて自動化するテストに分けているとします。(よい表現があったら言い直してください) 画面+ロジック+DBのテストと、ロジック+DBのテストに分けてテストをやっていたとします。

2012-01-17 13:14:58
鈴木三紀夫 @mkoszk

@kyon_mm このようにテストを行うのであれば、ロジック+DBの仕様書や設計書も作らなければならない、というのが湯本さんの意見。僕は、そうかもしれないけれど、現実は無理でしょうというもの。

2012-01-17 13:16:19
あきやま🍠 @akiyama924

@mkoszk 登山道は一つだけじゃないから。色々なアプローチがあったほうが良いと思います。

2012-01-17 13:20:46
きょん@アジャイルコーチ、システムアーキテクト @kyon_mm

@mkoszk 前者は「GUIテスト」後者は「アプリケーションドライバレイヤに対するテスト」と表現することがあります。 [うさみみ*´×`*エンジニア]

2012-01-17 13:27:13
鈴木三紀夫 @mkoszk

なるほど。ありがとう。 “@kyon_mm: 前者は「GUIテスト」後者は「アプリケーションドライバレイヤに対するテスト」と表現することがあります。 [うさみみ*´×`*エンジニア]”

2012-01-17 13:29:17