「やる夫で学ぶTDD」六日目 四日目の付け足し〜すべての状態遷移モデルを今テストへ〜 #ytdd

某SIerで if(true == false) のような神コードのインスペクションで廃人化しているやらない夫こと太田先生の「やる夫で学ぶTDD」六日目です。
6
Kenichiro Ota @oota_ken

やる夫で学ぶTDD 6日目 4日目の付け足し すべての状態遷移モデルを今テストへ ということで、遅くなりましたが、ちょっとだけやります。 #ytdd

2011-02-10 01:11:39
Kenichiro Ota @oota_ken

やる夫:やらない夫ー、やらない夫ー、ずっとチャットにいなかったけど何やっていたんだお? #ytdd

2011-02-10 01:12:19
Kenichiro Ota @oota_ken

やらない夫:来週、やらない夫をはじめとするデブサミ2011というイベントで、やらない夫が属するTDD研究会では、TDDをペアプロでやろうっていうことになっているのだけだが、一通りの言語を押さえておこうということで、 #ytdd

2011-02-10 01:13:38
Kenichiro Ota @oota_ken

やらない夫:Visual Studio Expresss でC#の勉強をしていたのだ。なので、遅くなってしまってすまん。まあ、それはさておき、夜も更けているので、昨日はボウリングのスコア計算と予告していたが、ちょっと趣向を変えて、 #ytdd

2011-02-10 01:14:53
Kenichiro Ota @oota_ken

やらない夫:4日目のCSVParserの時に作った、状態遷移モデル(ステートマシーン図)を、他のツールを使ってテストにもっと役立ててみようというネタでやってみたいと思う。 #ytdd

2011-02-10 01:15:47
Kenichiro Ota @oota_ken

やる夫:たしか、astahでこんなの作ったお。 http://twitpic.com/3x41cj #ytdd

2011-02-10 01:16:23
拡大
Kenichiro Ota @oota_ken

やらない夫:そうだ。もちろん、これだけでも十分、状態遷移が分かるし、クラス設計にもテストにも役立つ。ただし、状態遷移モデルだけからテストケースを作ると謝った状態遷移のチェックができず、テストしては弱い。 #ytdd

2011-02-10 01:17:31
Kenichiro Ota @oota_ken

やらない夫:そこで、遷移前の状態と、イベント、遷移後状態を組み合わせたマトリックスである状態遷移表を状態遷移モデルから作る。 #ytdd

2011-02-10 01:18:23
Kenichiro Ota @oota_ken

やる夫:Excelとかで書くのかお。図を描くのにもそれなりに時間がかかったのに、さらに表も書くのかお。 #ytdd

2011-02-10 01:19:16
Kenichiro Ota @oota_ken

やらない夫:それを自動的にやってくれるツールがある。 Enterprise Archtictは状態遷移図を書くと同時に状態性意表も作ってくれる。 http://bit.ly/gcqS5f #ytdd

2011-02-10 01:20:31
Kenichiro Ota @oota_ken

やる夫:そんな便利なツールがあるなら、すぐ使うお!ダウンロードするお!URL教えるんだお。#ytdd

2011-02-10 01:21:01
Kenichiro Ota @oota_ken

やらない夫:まて、これは30に日の評価版はダウンロードできるが、商用ツールだ。正式に仕事で使うにはお金払う必要があるから注意な。評価版のダウンロードはこちらだ。 http://bit.ly/hRYRC6 機能制限なくフルの機能が使える。 #ytdd

2011-02-10 01:22:57
Kenichiro Ota @oota_ken

やらない夫:1ライセンスで17,325円だな。 #ytdd

2011-02-10 01:24:18
Kenichiro Ota @oota_ken

やる夫:1まん7せんえん!!!!エロゲが3本も買えるお。ありえないお。ネットで落ちていないか探すお。 #ytdd

2011-02-10 01:24:52
Kenichiro Ota @oota_ken

やらない夫:待て、それは立派な犯罪だ! #ytdd

2011-02-10 01:25:14
Kenichiro Ota @oota_ken

阿部さん:男は度胸、何でもやってみるものさ。 やる夫、ようやくEnterprise Architectまでたどり着いたか。実は、秘密にしていたがコーポレートライセンスで購入済みだ。その必要性が分かったお前はもう自由に使える。#ytdd

2011-02-10 01:26:10
Kenichiro Ota @oota_ken

やる夫:さすが阿部さんだお。使ってみるお。で、まずは評価版で、CSVPaserの状態遷移図を書いてみるお。 #ytdd

2011-02-10 01:26:43
Kenichiro Ota @oota_ken

やる夫:astahで書いたのと同じやつをEA(もう略す)で書いてみたお! #ytdd http://twitpic.com/3y15h4

2011-02-10 01:29:36
拡大
Kenichiro Ota @oota_ken

阿部さん:そして、状態遷移図上で、右クリック Statechart Editor -> Tableだ。 #ytdd

2011-02-10 01:30:52
Kenichiro Ota @oota_ken

やる夫:状態遷移表がでてきたお! #ytdd http://twitpic.com/3y16gl

2011-02-10 01:33:13
拡大
Kenichiro Ota @oota_ken

阿部さん:そして、なんと、こちらの状態遷移表でも編集ができ、その編集結果は状態遷移図に反映されている。2wayだな。後、テーブルのパターンは3つあるので、目的に応じて使い分けてほしい。Excelで状態遷移表書いている場合じゃないぞ。 #ytdd

2011-02-10 01:34:35
Kenichiro Ota @oota_ken

やる夫:これは自分で買っていいぐらい、楽ちんできるツールだお・・・・。空いた時間でエロゲできるお。 #ytdd

2011-02-10 01:35:10
Kenichiro Ota @oota_ken

やらない夫:阿部さんにだいぶお株を奪われしまったが、この状態遷移表をベースにテストケースを作れるわけだが、さらに高度な状態遷移のカバレッジであるNスイッチカバレッジを満たすテストケースを作るための方法として、#ytdd

2011-02-10 01:36:15
Kenichiro Ota @oota_ken

やらない夫:この、状態遷移図からCSVファイル、そうCSVファイルにエキスポートして、それをExcel、今度は使っていいぞ、で開く。 #ytdd

2011-02-10 01:38:20
Kenichiro Ota @oota_ken

やらない夫:こんな感じの元の状態遷移表から、#ytdd http://twitpic.com/3y191f

2011-02-10 01:42:15
拡大