Mindmapを利用するシナリオ洗い出し。
こんにちは。
先の投稿にはシュード・コードでTCを設計する方法をしめしましたがそれはTDD(Test Driven Development)を狙って作ったものでした。
今度は開発者の観点ではなくて、上流工程のテスト設計をする方法の1つを紹介します。
上流工程なので、一応画面をみながらテスト設計を考えてみましょう。
画面より考えられるテスト視点は二つです。
1. 環境と状況(Environment or Context)
2. Action
環境と状況(Environment or Context) | Action |
---|---|
上の画面はモバイル・アプリなので、環境また状況は次のように想定しました。 1. ネットワーク切れ、また反応が弱いネットワーク 2. 言語環境:日本語、中国語、英語 |
対象はログイン画面です。 ログイン画面で洗い出されるActionは次のようです。 1. メール・アドレスを入力する(また空欄に残る) 2. メール・アドレス欄でメール形式ではない文字を入力する。 3. 未登録メール・アドレスを入力する。 4. 暗証番号を入力する(また空欄に残る) 5. 間違い暗証番号を入力する 6. 「パスワードをお忘れ方」をクリックする 7. 「会員登録」をクリックする。 |
今までの整理をマインド・マップでしてみました
ここで注意すべくのは
Actionは「Yes」,「No」で分けられるように書く
です。こう整理するのが文章を明確にします。
これから ActionItem間の従属関係を考えてみましょう。
一応
- 「ログイン」ボタンをクリック
- 「パスワードをお忘れ方」をクリック
- 「会員登録」をクリック
の間は従属関係が見えません。2、3番目は下位で小枝がないのでそれ自体がチェック項目になります。
1番目の「ログイン。。。」の下位項目たちを見ましょう。
「メール・アドレス欄で入力」と「メール・アドレス欄でメール形式ではない文字を入力する」を比べると
「メール・アドレス欄で入力」:Yes
の場合「メール・アドレス欄でメール形式ではない文字を入力する」が成立します。なので、「メール・アドレス欄でメール形式ではない文字を入力する」は「メール・アドレス欄に入力」で従属されてます。
「未登録メール・アドレスを入力する」と「メール・アドレス欄でメール形式ではない文字を入力する」の関係も従属関係です。メールアドレスの形式のみ登録されたのかを確認できるからです。
全部整理すればこうなります。
マップの枝より「Yes」を含めているルーツを選んでみましょう。
Path+して「ログイン」ボタンをクリック | |
---|---|
1 | メールアドレス欄で入力→(Yes)→メール・アドレス欄でメール形式ではない文字を入力する→(Yes) |
2 | メールアドレス欄で入力→(Yes)→メール・アドレス欄でメール形式ではない文字を入力する→(No) →未登録メール・アドレスを入力する→(Yes) |
3 | メールアドレス欄で入力→(Yes)→メール・アドレス欄でメール形式ではない文字を入力する→(No) →未登録メール・アドレスを入力する→(No)→暗証番号を入力する→(No) |
4 | メールアドレス欄で入力→(Yes)→メール・アドレス欄でメール形式ではない文字を入力する→(No) →未登録メール・アドレスを入力する→(No)→暗証番号を入力する→(Yes)→間違い暗証番号を入力する →(Yes) |
5 | メールアドレス欄で入力→(Yes)→メール・アドレス欄でメール形式ではない文字を入力する→(No) →未登録メール・アドレスを入力する→(No)→暗証番号を入力する→(Yes)→間違い暗証番号を入力する →(No) |
各ケースを「ログイン1」〜「ログイン5」で名付けましょう。
Action、環境、状況はこれでまとめられます。
Action | ログイン1〜ログイン5 |
「パスワードをお忘れ方。。」をクリックする | |
「会員登録」をクリックする。 | |
環境 | 言語:日本語 |
言語:中国語 | |
言語:英語 | |
状況 | ネットワーク:切られる |
ネットワーク:弱い | |
ネットワーク:正常 |
最後のテストケースはこの3つの組み合わせで洗い出したす。
組み合わせはPICTMasterというツールを使いました。
ここでイシューが一つあります。
組み合わせのオプションの中て Number of Combined Parameterをいくらにすればいいかなんです。それは環境と状況の軽さに従います。もし言語があんまりミッション・クリッチカルじゃない場合はこの値を1ですればいいです。でも、もし言語がクリッチカルな意味がある場合はこの値を2以上にして、網羅性を高める必要はあります。
僕はParameter=2の方が合理的に見えるのでそれでケースを整理します。
結果を環境をプライマリー・キーで、状況をセカンダリー・キーでソーティングして整理しました。
Action Scenario | |
---|---|
ログイン1 | メールアドレス欄で入力→(Yes)→メール・アドレス欄でメール形式ではない文字を入力する→(Yes) |
ログイン2 | メールアドレス欄で入力→(Yes)→メール・アドレス欄でメール形式ではない文字を入力する→(No) →未登録メール・アドレスを入力する→(Yes) |
ログイン3 | メールアドレス欄で入力→(Yes)→メール・アドレス欄でメール形式ではない文字を入力する→(No) →未登録メール・アドレスを入力する→(No)→暗証番号を入力する→(No) |
ログイン4 | メールアドレス欄で入力→(Yes)→メール・アドレス欄でメール形式ではない文字を入力する→(No) →未登録メール・アドレスを入力する→(No)→暗証番号を入力する→(Yes)→間違い暗証番号を入力する →(Yes) |
ログイン5 | メールアドレス欄で入力→(Yes)→メール・アドレス欄でメール形式ではない文字を入力する→(No) →未登録メール・アドレスを入力する→(No)→暗証番号を入力する→(Yes)→間違い暗証番号を入力する →(No) |
No | Action Scenario | 状況(ネットワーク) | 環境(言語) |
---|---|---|---|
1 | ログイン5 | 弱い | 中国語 |
2 | ログイン1 | 弱い | 中国語 |
3 | ログイン3 | 切られる | 中国語 |
4 | ログイン2 | 正常 | 中国語 |
5 | ログイン4 | 正常 | 中国語 |
6 | ログイン3 | 弱い | 英語 |
7 | ログイン1 | 切られる | 英語 |
8 | ログイン2 | 切られる | 英語 |
9 | ログイン4 | 切られる | 英語 |
10 | ログイン5 | 正常 | 英語 |
11 | ログイン2 | 弱い | 日本語 |
12 | ログイン4 | 弱い | 日本語 |
13 | ログイン5 | 切られる | 日本語 |
14 | ログイン3 | 正常 | 日本語 |
15 | ログイン1 | 正常 | 日本語 |
Author And Source
この問題について(Mindmapを利用するシナリオ洗い出し。), 我々は、より多くの情報をここで見つけました https://qiita.com/cheuora/items/a43648939fa21e3127c9著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .