SlideShare a Scribd company logo
1 of 33
JaSST’11 Kyushu チュートリアル


実践!CEGTestで原因結果グラフを
作ってみよう

       加瀬 正樹(ニフティ株式会社)
自己紹介
名前     加瀬      正樹(@softest)
所属     ニフティ株式会社
         http://www.nifty.co.jp/
         メールサービスのシステム開発・運用
         迷惑メール対策への取り組み
主な活動   WACATE
         http://wacate.jp/
         若手テストエンジニアをターゲットにしたソフトウェア
         テストワークショップ
       TEF勉強会
         http://www.swtest.jp/wiki/index.php
         主にテスト技法をテーマにしたオフライン勉強会を不定
         期開催
       JaSST
         JaSST’10 四国
         『原因結果グラフ技法を学んでみよう!使ってみよう!』

2                                   JaSST’11 Kyushu
本日のタイムテーブル
    20分   原因結果グラフを解説
           技法の特徴と説明
           CEGTestの紹介、描き方

    30分   CEGTestを動かしてみる
           ツールに触れて、使い方を覚えよう
           デモもします

    60分   演習問題に挑戦
           3問用意しています


    10分   おさらい
           今日のまとめ・振り返り


3                           JaSST’11 Kyushu
CEG
             はじめの一歩




    原因結果グラフの解説




4                JaSST’11 Kyushu
原因結果グラフとは
       Cause-Effect Graph(CEG)
           複雑な仕様を持つテスト対象の入力やイベント(=原因)の
            組合せと、出力(=結果)との論理関係をグラフ化し、デシ
            ジョンテーブルを作成する組合せテスト設計技法

                直交表系          デシジョンテーブル系

        技法の     直交表           デシジョンテーブル
        種類      HAYST法®       原因結果グラフ技法
                All-Pair法     CFD法

        効用      入力条件がそれぞれ無    入力条件が複雑な関係性を
                関係と思われるテスト    持つテスト対象に適用し、
                対象に適用し、関係が    論理関係が正しいことを確
                ないことを確認する     認する

    5                                 JaSST’11 Kyushu
原因結果グラフの特徴
       長所
           図式化・整理し、網羅的なテスト条件を作成できる
           仕様の矛盾を見つけたり、設計の単純化をしやすくする
       短所
           仕様からグラフを作成する難しさ(分析・制約)
           グラフからデシジョンテーブルへ変換する難しさ




                         見直し
    6                           JaSST’11 Kyushu
CEGTestとは
       ブラウザで操作可能な原因結果グラフ描画ツール
           グラフをサクサク作成することができます
           グラフからデシジョンテーブルを自動生成します
                                                   デシジョン
                                                    テーブル



原因結果
                                                   カバレッジ
 グラフ
                                                     表



             http://softest.cocolog-nifty.com/labo/CEGTest/

    7                                            JaSST’11 Kyushu
CEGTestのきほん
       基本要素(ノード,リンク)
       論理関係(AND, OR)
       否定(NOT)
       制約(ONE, EXCL, INCL)
           その他の制約(REQ, MASK)




              http://softest.cocolog-nifty.com/labo/CEGTest/

    8                                             JaSST’11 Kyushu
原因結果グラフの描き方(1)
       仕様をノードとリンクと論理関係で表現する
           【例】 「この車両は通勤時間帯、女性専用車両です」
                         リンク
             原因                       結果
            ノード                       ノード



                            論理演算子

    ノードは…左側に原因、右側に結果を配置する
    ノードは…命題形式(Yes か No )で表現する
    ノードは…リンクと論理演算子で結ばれる
    ノードは…結果ノードから見つけるとよい
    9                               JaSST’11 Kyushu
原因結果グラフの描き方(2)
    論理演算子はAND(∧)とOR(∨)の2種類
    論理演算子 グラフの例         キーワード
      AND               XかつY
     (かつ)               Xであり、Y
                        XとYすべて
                        …

      OR                XまたはY
    (または)               Xあるいは、Y
                        XとYのいずれ
                        か
                        …
    10                    JaSST’11 Kyushu
原因結果グラフの描き方(3)
    グラフは多段の階層化で描ける
        【例】 「女性専用車両は車いすの方も乗車可能です」

                        「女性・車いす」は
                       女性または車いすの方



                         女性・車いすの方は、
                          通勤時間帯のときは
                             乗車可能



    一番左は原因ノード、一番右は結果ノード
    間にあるノードは中間ノード
    11                        JaSST’11 Kyushu
原因結果グラフの描き方(4)
    リンクを否定(NOT)で表現する
        【例】 「7時~9時、土日・祝日以外が通勤時間帯」



                              通勤時間帯は、
                             午前7時~9時かつ
                             土日・祝日ではない

                 否定記号(NOT)
    否定は…リンクに波線(Nの文字)を重ねて表現
    一般的に、ノード名は肯定文がわかりやすい
    否定は…例外条件を表すノードにつくことが多い

    12                          JaSST’11 Kyushu
原因結果グラフの描き方(5)
    制約をつける
        原因ノードや中間ノードのありえない組合せを
         見つけて、原因結果グラフに記載する

          集合系の制約   順序系の制約
          ONE制約    REQ制約
          EXCL制約   MASK制約
          INCL制約

制約は、複雑な論理関係を簡単に表現したもの
制約がないとテストできない組合せがでてきてしまう
順序系の制約(REQ、MASK)はちょっと難しい
    13                      JaSST’11 Kyushu
原因結果グラフの描き方(6)
ONE                  EXCL(exclusive)   INCL(inclusive)




唯一つが真(True)          高々一つが真(True)      少なくとも一つが真(True)
【例】                  【例】               【例】
 {男性、女性}              {6歳以下、65歳以上}      チェックボックスなど
 {Play、Stop、Pause}    {電車通勤、バス通勤}
 など                   など



 ONEとEXCLの違いは、全て偽が成立するかどうか
 テストの目的によって ONE か EXCL を選択する
 14                                             JaSST’11 Kyushu
参考:REQとMASK
REQ(required)                 MASK(masked)




Aが真になるためには、Bが真であることが必要        Aが真であれば、Bの真偽がわからない(M)で
   商品ボタンは、在庫があって、お金を投入す       ある
   ることで表示される。ボタンが表示されて初          クリップボードにデータがなければ、右
   めて、「ボタン押下」が可能になる。             クリックメニューの「貼り付け(P)」は
                                 disableになっている。
      REQ制約がないと商品ボタンが表示されない
      のにボタン押下をするテスト条件がでてきて       ただし、disableであることを確認したい
      しまう。                       場合は、MASKをつけない


 15                                          JaSST’11 Kyushu
講師と一緒に
                 使ってみよう




     CEGTestを動かしてみる




16                    JaSST’11 Kyushu
CEGTestの基本操作
    ノードを配置・編集する
    リンクを作成・編集する
    制約を作成・編集する                                練習問題

    位置を移動する
    エクスポート
    インポート                                        デモ
    編集操作(クリア、リンクの削除)


         http://softest.cocolog-nifty.com/labo/CEGTest/

    17                                       JaSST’11 Kyushu
練習1
ここまでに登場したグラフをCEGTestで作ってみよう
例




    ノードを配置・編集する
    リンクを作成・編集する
    位置を移動する


    18                  JaSST’11 Kyushu
練習2
以下の原因結果グラフを描いてみよう
例




    制約を作成・編集する
    位置を移動する

    19              JaSST’11 Kyushu
デモ
    エクスポート
    インポート
    編集操作(クリア、リンクの削除)




    20                  JaSST’11 Kyushu
できる問題に
                挑戦しよう




     演習問題に挑戦




21               JaSST’11 Kyushu
演習1(難易度★☆☆)
この入園料の仕様を原因結果グラフに表現せよ。

 動物園の入園料は、以下の条件で割引となる。
 ・6歳以下で地元住民
 ・65歳以上




22                   JaSST’11 Kyushu
演習2(難易度★★☆)
以下の仕様について原因結果グラフを作成せよ。

映画館の入場料金について
     大人             1,800円
     大学生・高校生        1,500円
     中学生以下          1,000円
     シニア(60歳以上)     1,000円

     ※レイトショーは、1,000円
     ※障がい者割引は、1,000円

                  ユナイテッド・シネマ   キャナルシティ13(改変)




23                                  JaSST’11 Kyushu
演習3(難易度★★★)
会員費が請求されるかどうかの原因結果グラフを作成せよ。

プレミアム会員は月額料金のサービスです。
会員費は、登録月は無料ですが、登録した月の途中で解除
した場合は1か月分の会員費が請求されます。
また、解除した日付にかかわらず、その月1か月分の会員
費が請求されます(日割り計算はしません)。

       引用 http://help.yahoo.co.jp/help/jp/premium/premium-03.html




24                                                JaSST’11 Kyushu
演習問題の解答




25             JaSST’11 Kyushu
演習1(難易度★☆☆)
この入園料の仕様を原因結果グラフに表現せよ。

  動物園の入園料は、以下の条件で割引となる。
  ・6歳以下で地元住民      「どちらか」っぽい
  ・65歳以上 で→かつ




制約は?




 26                     JaSST’11 Kyushu
演習2(難易度★★☆)
以下の仕様について原因結果グラフを作成せよ。
映画館の入場料金について
              大人             1,800円
                大学生・高校生      1,500円
 これが結果
                中学生以下        1,000円
     原因っぽい      シニア(60歳以上)   1,000円

       ※レイトショーは、1,000円
       ※障がい者割引は、1,000円

                               ユナイテッド・シネマ キャナルシティ13(改変)




27                                           JaSST’11 Kyushu
演習3(難易度★★★)
会員費が請求されるかどうかの原因結果グラフを作成せよ。
            テストしたい目的はここ
プレミアム会員は月額料金のサービスです。
会員費は、登録月は無料ですが、登録した月の途中で解除した場合は1か月分の会員費が請求されます。
また、解除した日付にかかわらず、その月1か月分の会員費が請求されます(日割り計算はしません)。

                          引用 http://help.yahoo.co.jp/help/jp/premium/premium-03.html



         6月、7月、8月に会員費請求
                                     ☆                  ☆                ☆
         7月、8月に会員費請求
                                                        ☆                ▼
         7月、8月に会員費請求                                    ☆                ▼
         6月に会員費請求                    ▼

         7月に会員費請求                                           ▼
                                                                     ▼
         8月に会員費請求

              会員費請求は
            ☆(利用している月)
          ▼(解約した月)のいずれか

28                                                              JaSST’11 Kyushu
演習3(難易度★★★)
会員費が請求されるかどうかの原因結果グラフを作成せよ。
            テストしたい目的はここ
プレミアム会員は月額料金のサービスです。
会員費は、登録月は無料ですが、登録した月の途中で解除した場合は1か月分の会員費が請求されます。
また、解除した日付にかかわらず、その月1か月分の会員費が請求されます(日割り計算はしません)。

                        引用 http://help.yahoo.co.jp/help/jp/premium/premium-03.html




プレミアム会員ならば、解除日が今月かどうかは不明


 29                                                           JaSST’11 Kyushu
まとめ




30         JaSST’11 Kyushu
今日のチュートリアルのまとめ
    原因結果グラフは論理関係のテスト技法のひとつ
    DTやCFDよりも難しいのでツールが必要
        CEGTestはグラフ作成の無償ツール
        テスト技法でもあり、仕様・設計の整理も可能
    CEGTestを使った個人演習
        グラフ(ノード・リンク・制約)の基本的な描き方
        仕様・設計を読み解いて、整理する思考
        グラフの修正、追記、見直し
    目の前のドキュメントの論理関係が見えてきます
        テスト技法も有効な場面で使わないと効果がでません
        CEG以外のテスト技法の使い方も振り返ってみよう

    31                       JaSST’11 Kyushu
参考情報
    「ソフトウェアテスト技法ドリル」,秋山 浩一著
        http://www.amazon.co.jp/dp/4817193603/
    原因結果グラフによるテスト設計支援ツール –
     CEGTest
        http://softest.cocolog-nifty.com/blog/cegtest.html
        連絡先 softest@nifty.com
    TEF主催勉強会資料(2011年2月7日)
        http://www.swtest.jp/wiki/index.php?TEF%2FStudyMeetin
         g%2F20110207
        http://togetter.com/li/98166



    32                                                   JaSST’11 Kyushu
2時間お疲れ様でした




33                JaSST’11 Kyushu

More Related Content

Featured

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

JaSST'11 Kyushu 配布資料(スライド)

  • 2. 自己紹介 名前 加瀬 正樹(@softest) 所属 ニフティ株式会社 http://www.nifty.co.jp/ メールサービスのシステム開発・運用 迷惑メール対策への取り組み 主な活動 WACATE http://wacate.jp/ 若手テストエンジニアをターゲットにしたソフトウェア テストワークショップ TEF勉強会 http://www.swtest.jp/wiki/index.php 主にテスト技法をテーマにしたオフライン勉強会を不定 期開催 JaSST JaSST’10 四国 『原因結果グラフ技法を学んでみよう!使ってみよう!』 2 JaSST’11 Kyushu
  • 3. 本日のタイムテーブル 20分 原因結果グラフを解説 技法の特徴と説明 CEGTestの紹介、描き方 30分 CEGTestを動かしてみる ツールに触れて、使い方を覚えよう デモもします 60分 演習問題に挑戦 3問用意しています 10分 おさらい 今日のまとめ・振り返り 3 JaSST’11 Kyushu
  • 4. CEG はじめの一歩 原因結果グラフの解説 4 JaSST’11 Kyushu
  • 5. 原因結果グラフとは  Cause-Effect Graph(CEG)  複雑な仕様を持つテスト対象の入力やイベント(=原因)の 組合せと、出力(=結果)との論理関係をグラフ化し、デシ ジョンテーブルを作成する組合せテスト設計技法 直交表系 デシジョンテーブル系 技法の 直交表 デシジョンテーブル 種類 HAYST法® 原因結果グラフ技法 All-Pair法 CFD法 効用 入力条件がそれぞれ無 入力条件が複雑な関係性を 関係と思われるテスト 持つテスト対象に適用し、 対象に適用し、関係が 論理関係が正しいことを確 ないことを確認する 認する 5 JaSST’11 Kyushu
  • 6. 原因結果グラフの特徴  長所  図式化・整理し、網羅的なテスト条件を作成できる  仕様の矛盾を見つけたり、設計の単純化をしやすくする  短所  仕様からグラフを作成する難しさ(分析・制約)  グラフからデシジョンテーブルへ変換する難しさ 見直し 6 JaSST’11 Kyushu
  • 7. CEGTestとは  ブラウザで操作可能な原因結果グラフ描画ツール  グラフをサクサク作成することができます  グラフからデシジョンテーブルを自動生成します デシジョン テーブル 原因結果 カバレッジ グラフ 表 http://softest.cocolog-nifty.com/labo/CEGTest/ 7 JaSST’11 Kyushu
  • 8. CEGTestのきほん  基本要素(ノード,リンク)  論理関係(AND, OR)  否定(NOT)  制約(ONE, EXCL, INCL)  その他の制約(REQ, MASK) http://softest.cocolog-nifty.com/labo/CEGTest/ 8 JaSST’11 Kyushu
  • 9. 原因結果グラフの描き方(1)  仕様をノードとリンクと論理関係で表現する  【例】 「この車両は通勤時間帯、女性専用車両です」 リンク 原因 結果 ノード ノード 論理演算子 ノードは…左側に原因、右側に結果を配置する ノードは…命題形式(Yes か No )で表現する ノードは…リンクと論理演算子で結ばれる ノードは…結果ノードから見つけるとよい 9 JaSST’11 Kyushu
  • 10. 原因結果グラフの描き方(2)  論理演算子はAND(∧)とOR(∨)の2種類 論理演算子 グラフの例 キーワード AND XかつY (かつ) Xであり、Y XとYすべて … OR XまたはY (または) Xあるいは、Y XとYのいずれ か … 10 JaSST’11 Kyushu
  • 11. 原因結果グラフの描き方(3)  グラフは多段の階層化で描ける  【例】 「女性専用車両は車いすの方も乗車可能です」 「女性・車いす」は 女性または車いすの方 女性・車いすの方は、 通勤時間帯のときは 乗車可能 一番左は原因ノード、一番右は結果ノード 間にあるノードは中間ノード 11 JaSST’11 Kyushu
  • 12. 原因結果グラフの描き方(4)  リンクを否定(NOT)で表現する  【例】 「7時~9時、土日・祝日以外が通勤時間帯」 通勤時間帯は、 午前7時~9時かつ 土日・祝日ではない 否定記号(NOT) 否定は…リンクに波線(Nの文字)を重ねて表現 一般的に、ノード名は肯定文がわかりやすい 否定は…例外条件を表すノードにつくことが多い 12 JaSST’11 Kyushu
  • 13. 原因結果グラフの描き方(5)  制約をつける  原因ノードや中間ノードのありえない組合せを 見つけて、原因結果グラフに記載する 集合系の制約 順序系の制約 ONE制約 REQ制約 EXCL制約 MASK制約 INCL制約 制約は、複雑な論理関係を簡単に表現したもの 制約がないとテストできない組合せがでてきてしまう 順序系の制約(REQ、MASK)はちょっと難しい 13 JaSST’11 Kyushu
  • 14. 原因結果グラフの描き方(6) ONE EXCL(exclusive) INCL(inclusive) 唯一つが真(True) 高々一つが真(True) 少なくとも一つが真(True) 【例】 【例】 【例】 {男性、女性} {6歳以下、65歳以上} チェックボックスなど {Play、Stop、Pause} {電車通勤、バス通勤} など など ONEとEXCLの違いは、全て偽が成立するかどうか テストの目的によって ONE か EXCL を選択する 14 JaSST’11 Kyushu
  • 15. 参考:REQとMASK REQ(required) MASK(masked) Aが真になるためには、Bが真であることが必要 Aが真であれば、Bの真偽がわからない(M)で 商品ボタンは、在庫があって、お金を投入す ある ることで表示される。ボタンが表示されて初 クリップボードにデータがなければ、右 めて、「ボタン押下」が可能になる。 クリックメニューの「貼り付け(P)」は disableになっている。 REQ制約がないと商品ボタンが表示されない のにボタン押下をするテスト条件がでてきて ただし、disableであることを確認したい しまう。 場合は、MASKをつけない 15 JaSST’11 Kyushu
  • 16. 講師と一緒に 使ってみよう CEGTestを動かしてみる 16 JaSST’11 Kyushu
  • 17. CEGTestの基本操作  ノードを配置・編集する  リンクを作成・編集する  制約を作成・編集する 練習問題  位置を移動する  エクスポート  インポート デモ  編集操作(クリア、リンクの削除) http://softest.cocolog-nifty.com/labo/CEGTest/ 17 JaSST’11 Kyushu
  • 18. 練習1 ここまでに登場したグラフをCEGTestで作ってみよう 例  ノードを配置・編集する  リンクを作成・編集する  位置を移動する 18 JaSST’11 Kyushu
  • 19. 練習2 以下の原因結果グラフを描いてみよう 例  制約を作成・編集する  位置を移動する 19 JaSST’11 Kyushu
  • 20. デモ  エクスポート  インポート  編集操作(クリア、リンクの削除) 20 JaSST’11 Kyushu
  • 21. できる問題に 挑戦しよう 演習問題に挑戦 21 JaSST’11 Kyushu
  • 23. 演習2(難易度★★☆) 以下の仕様について原因結果グラフを作成せよ。 映画館の入場料金について 大人 1,800円 大学生・高校生 1,500円 中学生以下 1,000円 シニア(60歳以上) 1,000円 ※レイトショーは、1,000円 ※障がい者割引は、1,000円 ユナイテッド・シネマ キャナルシティ13(改変) 23 JaSST’11 Kyushu
  • 25. 演習問題の解答 25 JaSST’11 Kyushu
  • 26. 演習1(難易度★☆☆) この入園料の仕様を原因結果グラフに表現せよ。 動物園の入園料は、以下の条件で割引となる。 ・6歳以下で地元住民 「どちらか」っぽい ・65歳以上 で→かつ 制約は? 26 JaSST’11 Kyushu
  • 27. 演習2(難易度★★☆) 以下の仕様について原因結果グラフを作成せよ。 映画館の入場料金について 大人 1,800円 大学生・高校生 1,500円 これが結果 中学生以下 1,000円 原因っぽい シニア(60歳以上) 1,000円 ※レイトショーは、1,000円 ※障がい者割引は、1,000円 ユナイテッド・シネマ キャナルシティ13(改変) 27 JaSST’11 Kyushu
  • 28. 演習3(難易度★★★) 会員費が請求されるかどうかの原因結果グラフを作成せよ。 テストしたい目的はここ プレミアム会員は月額料金のサービスです。 会員費は、登録月は無料ですが、登録した月の途中で解除した場合は1か月分の会員費が請求されます。 また、解除した日付にかかわらず、その月1か月分の会員費が請求されます(日割り計算はしません)。 引用 http://help.yahoo.co.jp/help/jp/premium/premium-03.html 6月、7月、8月に会員費請求 ☆ ☆ ☆ 7月、8月に会員費請求 ☆ ▼ 7月、8月に会員費請求 ☆ ▼ 6月に会員費請求 ▼ 7月に会員費請求 ▼ ▼ 8月に会員費請求 会員費請求は ☆(利用している月) ▼(解約した月)のいずれか 28 JaSST’11 Kyushu
  • 29. 演習3(難易度★★★) 会員費が請求されるかどうかの原因結果グラフを作成せよ。 テストしたい目的はここ プレミアム会員は月額料金のサービスです。 会員費は、登録月は無料ですが、登録した月の途中で解除した場合は1か月分の会員費が請求されます。 また、解除した日付にかかわらず、その月1か月分の会員費が請求されます(日割り計算はしません)。 引用 http://help.yahoo.co.jp/help/jp/premium/premium-03.html プレミアム会員ならば、解除日が今月かどうかは不明 29 JaSST’11 Kyushu
  • 30. まとめ 30 JaSST’11 Kyushu
  • 31. 今日のチュートリアルのまとめ  原因結果グラフは論理関係のテスト技法のひとつ  DTやCFDよりも難しいのでツールが必要  CEGTestはグラフ作成の無償ツール  テスト技法でもあり、仕様・設計の整理も可能  CEGTestを使った個人演習  グラフ(ノード・リンク・制約)の基本的な描き方  仕様・設計を読み解いて、整理する思考  グラフの修正、追記、見直し  目の前のドキュメントの論理関係が見えてきます  テスト技法も有効な場面で使わないと効果がでません  CEG以外のテスト技法の使い方も振り返ってみよう 31 JaSST’11 Kyushu
  • 32. 参考情報  「ソフトウェアテスト技法ドリル」,秋山 浩一著  http://www.amazon.co.jp/dp/4817193603/  原因結果グラフによるテスト設計支援ツール – CEGTest  http://softest.cocolog-nifty.com/blog/cegtest.html  連絡先 softest@nifty.com  TEF主催勉強会資料(2011年2月7日)  http://www.swtest.jp/wiki/index.php?TEF%2FStudyMeetin g%2F20110207  http://togetter.com/li/98166 32 JaSST’11 Kyushu
  • 33. 2時間お疲れ様でした 33 JaSST’11 Kyushu