Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
「良いテストをするための手法     と習慣」加瀬 正樹( WACATE 実行委員会)                                                      1      Copyright (C) 2012...
アジェンダ•   はじめに•   良いテストとは•   良いテストをするための手法•   良いテストをするための習慣•   おわりに         Copyright (C) 2012 WACATE All rights reserved
はじめに 今回の WACATE では組合せテストがテーマ 実際はその前にいろいろな作業・検討がある   計画をする   分析をする   戦略を立てる   etc テスト設計 ( の前 ) で意識してほしいこと            Cop...
良いテストとは ここでは『良いテスト』をこう考える  適切なテスト技法を選んでいる                                                               良い手法  適切なテスト条件を選ん...
良いテストをするための手法 良いテストを構成する 2 軸適切     良 さそうなテスト                                       良 いテスト     ・効率 を意識 している               ...
ラルフチャートを使った分析 ラルフチャート  HAYST 法で使われる分析手法のひとつ。  すぐにテスト詳細設計に入れない ( 機能 ) 目的を図式化  して因子や水準をよりよく抽出し、テスト技法を発見  するチャート。      ノイズ・ア...
ラルフチャートの使い方例1Google ドキュメントを使うためにログインする                                     ノイズ・アクティブノイズ                                   ...
ラルフチャートの使い方例1Google ドキュメントを使うためにログインする                                               ④ ノイズ・アクティブノイズ                       ...
テスト技法の発見 ラルフチャートから必要なテスト技法を見つける入力       状態変数         ノイズ              アクティブノイ                        出力     テスト技法        ...
ラルフチャートを作成するコツ 処理・プロセスを中央に描く                                                        WAKATE アプ    PC 起動→                  ...
良いテストをするための習慣 見直しの習慣  テスト条件の見直し  要因・因子の見直し  粒度・水準・範囲の見直し  テスト技法の見直し       Copyright (C) 2012 WACATE All rights reserved
テスト条件の見直し テスト技法に従って作ったテスト条件・               前バージョンでは  テストケースは妥当か?  Thnderbird で UTF-8                                     ...
要因・因子の見直し 抽出した因子はどう扱ったか?    因子を使うか、あるいは剪定するか?    暗示的な因子は他にないか?    因子名はわかりやすいか?                                           ...
要因・因子の見直し 別のラルフチャートが参考にならない?       Copyright (C) 2012 WACATE All rights reserved
要因・因子の見直し<メール作成・送信のテスト>                     ・サイズが大きい ( テキスト , 添付                     ファイル )                     ・送信数が多い ( ...
要因・因子の見直し<メール閲覧・移動のテスト>                      ・プロトコル (POP3,IMAP4)                      ・移動先 ( フォルダにドロップ , ド                ...
粒度・水準・範囲の見直し ズームインとズームアウト   細かすぎるとテスト工数が増大   粗すぎると検出漏れのリスク                                                    テストの目的(目的機 ...
テスト技法の見直し 別のテスト技法のほうがよくないか?  論理関係は思ったほど複雑ではない  組合せは少ないから同値分割で十分  使いこなせないなら使わない       Copyright (C) 2012 WACATE All rights...
まとめ• 良いテストをするための手法 –   ラルフチャートの活用 –   入力 , 出力 , 状態変数 , ノイズ / アクティブノイズ –   テスト技法の選択• 良いテストをするための習慣 –   テスト条件の見直し –   要因・因子の...
おわりに ” 適切な”の解はひとつではない        Copyright (C) 2012 WACATE All rights reserved
Upcoming SlideShare
Loading in …5
×

20120624 wacate2012 s_イブニングセッション(当日用)

1,371 views

Published on

  • Be the first to comment

20120624 wacate2012 s_イブニングセッション(当日用)

  1. 1. 「良いテストをするための手法 と習慣」加瀬 正樹( WACATE 実行委員会) 1 Copyright (C) 2012 WACATE All rights reserved
  2. 2. アジェンダ• はじめに• 良いテストとは• 良いテストをするための手法• 良いテストをするための習慣• おわりに Copyright (C) 2012 WACATE All rights reserved
  3. 3. はじめに 今回の WACATE では組合せテストがテーマ 実際はその前にいろいろな作業・検討がある 計画をする 分析をする 戦略を立てる etc テスト設計 ( の前 ) で意識してほしいこと Copyright (C) 2012 WACATE All rights reserved
  4. 4. 良いテストとは ここでは『良いテスト』をこう考える 適切なテスト技法を選んでいる 良い手法 適切なテスト条件を選んでいる 良い習慣がある いいね! ステークホルダ 開発者 いいね! エンドユーザ テストエンジニア Copyright (C) 2012 WACATE All rights reserved
  5. 5. 良いテストをするための手法 良いテストを構成する 2 軸適切 良 さそうなテスト 良 いテスト ・効率 を意識 している ・効率 のよいテスト適 ・的外 れなテスト ・網羅的 なテスト切 ・ バグが残 る ・ ピンポイントなテストなテス 良くないテスト 普通のテストト技 ・非効率なテスト ・堅実なテスト法 ・的外れなテスト ・非効率なテスト ・手ごたえがない ・見えないテスト 適切なテスト条件(因子・水準) 適切 Copyright (C) 2012 WACATE All rights reserved
  6. 6. ラルフチャートを使った分析 ラルフチャート HAYST 法で使われる分析手法のひとつ。 すぐにテスト詳細設計に入れない ( 機能 ) 目的を図式化 して因子や水準をよりよく抽出し、テスト技法を発見 するチャート。 ノイズ・アクティブノイズ 目的機能を 入力 出力 表す図 ソフトウェアテスト技法ドリル , 秋山浩一 著 状態変数 http://www.amazon.co.jp/dp/4817193603 Copyright (C) 2012 WACATE All rights reserved
  7. 7. ラルフチャートの使い方例1Google ドキュメントを使うためにログインする ノイズ・アクティブノイズ 目的機能を 入力 出力 表す図 状態変数 Copyright (C) 2012 WACATE All rights reserved
  8. 8. ラルフチャートの使い方例1Google ドキュメントを使うためにログインする ④ ノイズ・アクティブノイズ ・文字列のブレ ( 大小文 字) ① 入力 ・端末 /OS/ ブラウザ ・外部からの攻撃 ( 連続失 ② 出力 ・メール ( 正しい、 敗) 認証成功・ 適当 ) 失敗を判定 ・ログイン成功 ・ Pass( 正しい、適 する ・ログインエラー 当) ・イベント ( ボタン 出力結果を判定する 、 Enter) ために入力・状態に ③ 状態変数 論理関係がある ・利用中、停止中 ⇒  デシジョンテー ・利用回数 (0 回、 1 回~ ) ブル Copyright (C) 2012 WACATE All rights reserved
  9. 9. テスト技法の発見 ラルフチャートから必要なテスト技法を見つける入力 状態変数 ノイズ アクティブノイ 出力 テスト技法 ズ少ない 少ない 同値分割・境界値 - - - 分析論理関係 正常系 原因結果グラフ - - - 異常系( 有則 ) CFD ・ DT組合せ 市場環境 いたずら 正常系 Read 中心 HAYST 法・直交( 無則 ) 表・ペアワイズ 状態遷移- Read/Write - - -論理関係 機能図式 Read/Write - - -( 有則 ) 市場環境 例外系 シナリオテスト- Read/Write - 極限環境 多大 負荷テスト- - -異常値 エラー系 エラー処理テスト - - - JaSST’12 Tokyo チュートリアル , 秋山資料 Copyright (C) 2012 WACATE All rights reserved
  10. 10. ラルフチャートを作成するコツ 処理・プロセスを中央に描く WAKATE アプ PC 起動→ リ メーラー起動 条件判定して → 受信操作 参加費表示 入力⇒出力⇒状態変数⇒ノイズの順番で考える 状態変数やノイズは暗示的な因子が多い 例示を考えてみる 具体的な変数値・シーンを考えて、出力を想像 有則 or 無則? 処理を妨害するには? テスト技法を選択する Copyright (C) 2012 WACATE All rights reserved
  11. 11. 良いテストをするための習慣 見直しの習慣 テスト条件の見直し 要因・因子の見直し 粒度・水準・範囲の見直し テスト技法の見直し Copyright (C) 2012 WACATE All rights reserved
  12. 12. テスト条件の見直し テスト技法に従って作ったテスト条件・ 前バージョンでは テストケースは妥当か? Thnderbird で UTF-8 の場合にバグが プロト セキュリ 文字コー 使用ソフト コル ティ ド あった。 ちょっと心 #1 POP なし JIS Thunderbird 配・・・ #2 IMAP SSL JIS Becky! #3 IMAP SSL UTF-8 Thunderbird L8 直交表に #4 POP なし UTF-8 Becky! 割りつけたテスト #5 IMAP なし EUC-JP Becky! #6 POP SSL EUC-JP Thunderbird #7 POP SSL Shift_JIS Becky! #8 IMAP なし Shift_JIS Thunderbird #9 IMAP なし UTF-8 Thunderbird 追加したテスト #1 POP なし UTF-8 Thunderbird 0 Copyright (C) 2012 WACATE All rights reserved
  13. 13. 要因・因子の見直し 抽出した因子はどう扱ったか? 因子を使うか、あるいは剪定するか? 暗示的な因子は他にないか? 因子名はわかりやすいか? ④ ノイズ・アクティブノイズ ・文字列のブレ ( 大小文 字) ① 入力 ・端末 /OS/ ブラウザ ・外部からの攻撃 ( 連続失 ② 出力 ・メール ( 正しい、 敗) 認証成功・ 適当 ) 失敗を判定 ・ログイン成功 ・ Pass( 正しい、適 する ・ログインエラー 当) この目的機能には ・イベント ( ボタン 関係ないが、別の 、 Enter) 目的機能では State ③ 状態変数 で使いそう ・利用中、停止中 ・利用回数 (0 回、 1 回~ ) Copyright (C) 2012 WACATE All rights reserved
  14. 14. 要因・因子の見直し 別のラルフチャートが参考にならない? Copyright (C) 2012 WACATE All rights reserved
  15. 15. 要因・因子の見直し<メール作成・送信のテスト> ・サイズが大きい ( テキスト , 添付 ファイル ) ・送信数が多い ( 宛先 , 送信数 ) ・アンチウイルスソフト ( なし ,XX 社 ,YY 社 ) ・メールの内容・宛先 ( 空 , 知り合い , 手 ・送信成功入力 ) 起動→新規作 ・送信待ち・題名 ( 空 , 日本語 , 長い 成→送信 ・送信失敗 ( エラー )題名 ) ・送信失敗 ( エラー・本文 ( 空 ,HTML, 添付あ メール )り)・送信サーバ設定  ( デフォルト , 別サーバ ・接続状態 ( オフ ,NB,BB, モバ設定 ) イル ) ・作成データ ( 新規 , 下書きか ら編集 ) Copyright (C) 2012 WACATE All rights reserved
  16. 16. 要因・因子の見直し<メール閲覧・移動のテスト> ・プロトコル (POP3,IMAP4) ・移動先 ( フォルダにドロップ , ド ロップミス ) ・アカウント ( 同一アカウント , 別ア 回線状態も カウント ) 影響しそう・フォルダ選択  ( 受信箱 , フォルダ 1, ゴ 起動→メー ・閲覧 ( 成功 , 失敗 )ミ箱 ) ル閲覧→移 ・移動 ( 成功 , 失敗 )・メール選択 ( 未読 , 既 動読 , 新着 )・クリック ( シングル , ダブル )・移動方法 (D&D, 右ク ・フラグ ( 未読 , 新着 , 削除 )リック ) ・フォルダ情報 ( 受信箱 , フォルダ 1, ゴミ箱 ) ・通数やサイズ 受信サーバ設定 は影響しない? Copyright (C) 2012 WACATE All rights reserved
  17. 17. 粒度・水準・範囲の見直し ズームインとズームアウト 細かすぎるとテスト工数が増大 粗すぎると検出漏れのリスク テストの目的(目的機 能)によって適切な粒度 は異なる <パスワード入力> その他 「英字」「数字」は「英数 数字 字」にまとめても問題ない だろう 記号 英字 「英字」はさらに「大文 字」「小文字」に分けて 考えるべき シナリオテスト 単機能テスト Copyright (C) 2012 WACATE All rights reserved
  18. 18. テスト技法の見直し 別のテスト技法のほうがよくないか? 論理関係は思ったほど複雑ではない 組合せは少ないから同値分割で十分 使いこなせないなら使わない Copyright (C) 2012 WACATE All rights reserved
  19. 19. まとめ• 良いテストをするための手法 – ラルフチャートの活用 – 入力 , 出力 , 状態変数 , ノイズ / アクティブノイズ – テスト技法の選択• 良いテストをするための習慣 – テスト条件の見直し – 要因・因子の見直し – 粒度・水準・範囲の見直し – テスト技法の見直し Copyright (C) 2012 WACATE All rights reserved
  20. 20. おわりに ” 適切な”の解はひとつではない Copyright (C) 2012 WACATE All rights reserved

×