« 原因結果グラフを解剖 - 原因から?結果から? | トップページ | Don't write redundant tests, and don't write too few tests. - テストは無駄なく漏れなく »

原因結果グラフ - 論理点カバレッジの解剖

方針転換。JaSSTの「三賢人、テストを語る」のPDF資料にある、カバレッジ表を読み解く。

また例題。
Ceg

IDとパスワードを入力して、ログインする画面についての原因結果グラフとします。ここでまず、網羅すべき論理展開式(論理接点、論理点?)がいくつあるかを調べる。これは、それぞれのエッジの交叉点に注目するとわかる。ANDであれば、Tになる1通りとFになるn通りがあるので、(n+1)通り。ORであれば、Fになる1通りとTになるn通りがあるので、(n+1)通り。ということはこのグラフで言えば、3+3+3+3+2=14通りとなる。14通りの論理展開式がどのように出現するかをマトリックスにするため、行には論理展開式を、列にはノードを並べた14×10行列を用意する。

Photo

ちなみに、薄緑色は原因ノード、イタリックは中間ノード、薄オレンジ色は結果ノード。ここにどんどんT/Fの組合せを記入していく。

Photo_2

ここからは、すべての論理展開式が出現するようにテストケースを組み立てていくのだが、この場合だと4組ですべて網羅した。

Dt

出現した論理展開式をチェックするとこんな形のマトリックスが完成する。「x」は1回だけ出現し、「#」は2回以上出現したことを表している。「#」は1回だけ出現し、「x」は2回以上出現したことを表している。

Photo_3

この流れでツールを作ってみるといいかな。ただ、PDF資料だと、最後のテストケースの選び方は割愛されている模様。

|

« 原因結果グラフを解剖 - 原因から?結果から? | トップページ | Don't write redundant tests, and don't write too few tests. - テストは無駄なく漏れなく »

コメント

こちらの方が楽でしょ。

> 「x」は1回だけ出現し、「#」は2回以上出現したことを表している。

逆ですね。(^_^;)。また、表の中の「x集減数」は「x出現数」のタイプミスかな。


それから、あまり気にされなくてもしばらくはいいですが、

テスト#3の91は、False and Falseなので、Fではなくfです。
テスト#4の92も同様でfです。

投稿: あきやま | 2008年2月16日 (土) 08:32

>あきやまさん

> こちらの方が楽でしょ。

楽チンでした^^;ただ、やはり手入力で作っているうちに
検算をしないと間違えてしまいそうな不安がありました。

画像など書き間違いはのちほど修正しておきますー。

Tとt、Fとfの使い分けも今までとは違う感じがしてきました。
(今までは原因ノードにも使ってました)

小文字表記は単純に完成したテーブルの作成手順の手がかり?
みたいなものとして捉えているんですが、他に意味があったり
するのでしょうか。あるいは、すべて網羅したあとに追加ケース
を作ったりするときの手がかり?

# 資料にあった表記をそのまま使っていたので、あまり
# 理解度が低かったかも。。。

投稿: softest | 2008年2月16日 (土) 09:01

> 検算をしないと間違えてしまいそうな不安がありました。

以前も書きましたが検算はすぐに自動化できますよ(制約は関係なく論理演算すればいいので)。

> Tとt、Fとfの使い分けも今までとは違う感じがしてきました。
> (今までは原因ノードにも使ってました)

中間ノードと結果ノードにしか現れません。
論理展開式(カバレッジ表の1から14のそれぞれ)によるものを大文字、そうでないものが小文字です。
何をテストしているのかを明確にするものです。

小文字になったものについては、テスト(確認)を省略してもよいです。
逆に言うと、できたデシジョンテーブルを横にみて、各ノードに必ず大文字のTとFが最低一つずつあることを確認するとよいです。

中間ノードのt, fはその右側の論理関係の入力としては、T, Fと同じに取り扱って構いません。

投稿: あきやま | 2008年2月16日 (土) 10:00

>あきやまさん

解説ありがとうございます。

> 逆に言うと、できたデシジョンテーブルを横にみて、各ノードに必ず大文字のTとFが最低一つずつあることを確認するとよいです。

ふむふむ。デシジョンテーブルを横に見て確認ですか。
感覚的にはなるほど、といったところですが、もう一度
反芻して理解深めてみたいです。

投稿: softest | 2008年2月17日 (日) 09:55

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/155415/10533715

この記事へのトラックバック一覧です: 原因結果グラフ - 論理点カバレッジの解剖:

« 原因結果グラフを解剖 - 原因から?結果から? | トップページ | Don't write redundant tests, and don't write too few tests. - テストは無駄なく漏れなく »