Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

テスト専門会社のノウハウが座学と演習でみっちり学べる「テスト設計実践講座」参加レポート

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2016/10/17 14:00

 ソフトウェア開発の実践的なノウハウを、業界のエキスパートから直に教わることのできる「CodeZine Academy」。本記事では、2日間に渡って開催された「テスト設計実践講座」をレポートします。テスト設計実践講座は、ソフトウェアテスト専門会社 SHIFTが運営する講座<ヒンシツ大学>の内容を再編し、「テスト設計ノウハウ」を2日間に凝縮してお届けするもの。ソフトウェアの品質に課題を感じている方、テストの基礎から学びたい方におすすめです。

テスト設計実践講座とは?

 テスト技法の学習と、実際のテスト設計のプロセスに則った演習を通じて、テスト設計のノウハウを2日間で学べる講座です。テストの意義や計画といった基礎的な部分から、基本的な技法を学び、機能や画面品質を確認するために実施される「組み合わせテスト」と、具体的なユースケースを想定して行われる「シナリオテスト」を、演習を通して学んでいきます。

 2日間通しでの受講がおすすめですが、1日のみ受講したい方は、1日目の「基礎編」のみ受講可能です。

どんな人にオススメ?

 講座は、こんな課題を抱えている方を対象にしています。

  • テスト駆動開発に取り組んでいるが、うまくテスト設計ができない方
  • 品質を高めるためにどのようなテストをすればよいか知りたい方
  • テストの漏れ抜けなどを改善したい方
  • テストケース作成をより楽に(効率的)にしたいと思っている方

 筆者が参加した講座では、テストについて一から学びたいという方、テスト担当者がいない現場であるため、開発者ではあるがテストも書く必要があるという方、テスト担当としてテストの工数を削減したい方など、さまざまな課題を持っている方が参加されていました。

講師はどんな方?

 テスト設計実践講座の講師は岡野誠さん。マイクロソフトでテストエンジニアを経験、大手SIerにて品質保証リーダーを務めたのち、2011年よりSHIFTに参画し、ヒンシツ大学を始めとした社内外の講座の講師を務めています。普段から講師をされていることもあり、講座の進行もスムーズで、優しく丁寧に教えてくださいます。

株式会社SHIFT 「ヒンシツ大学」クオリティ エヴァンジェリスト 岡野誠さん
株式会社SHIFT 「ヒンシツ大学」クオリティ エヴァンジェリスト 岡野誠さん

 講座は以下のような流れで進んでいきます。

1日目(組み合わせテスト編)

  • 品質を高めるために必要なテストとは?
  • テスト設計技法基礎
  • 組合せテスト設計基礎
  • 確認項目作成実践
  • パターン表作成実践
  • テスト設計書チェック実践

2日目(シナリオテスト編)

  • シナリオテスト設計基礎
  • シナリオテスト設計実践(基礎)
  • シナリオテスト設計実践(応用)
  • 理解度確認テスト&アンケート記入

 次ページからは、講座の様子をダイジェストで紹介していきます。

1日目:テスト設計の基礎+組み合わせテストの演習

 1日目では、まずは参加者のみなさんで自己紹介をしたあと、品質に対して、現場でどのような課題があるかを出しあいました。例えば、単体テストにおいては「条件分岐を網羅するのが難しい」、結合テストでは「シナリオに記載していない部分でバグがある」など。こういった課題を出発点に、よいテスト設計のポイントや、「同値分割」「境界値分析」「デシジョンテーブル」といった基礎的なテスト技法を学びます。

 そして、機能テストのテスト設計において必要な「確認項目一覧」「実行パターン表」の作り方を学びます。確認項目の抽出については、「ユーザー登録ページ」といった架空のWebアプリを想定し、どんな画面にどんなテスト項目があるかの洗い出し、洗い出した観点に抜け漏れがないか、などの演習に取り組みました。

会員登録画面を例に、確認項目の区分抽出をする演習
会員登録画面を例に、確認項目の区分抽出をする演習

 「実行パターン表」については、組み合わせの作成方法の理論を学んだ後、組み合わせパターンを自動的に算出してくれるツール「PICTMaster」を使いながら、パターンを作成してみます。

PICTMasterの解説中
PICTMasterの解説中

 1日目の最後には、ところどころ間違っているサンプルのテスト設計書をチェックし、ミスを指摘する演習も行いました。テスト設計のチェックは、手間を惜しむと後工程での修正が必要になり、余計に工数がかかってしまうこともあるそうです。このように、独学だと後回しにしてしまいそうな観点を学べるというのも、講座のメリットだと感じました。

2日目:シナリオテストの基礎と実践

 2日目はシナリオテストについて学んでいきます。SHIFTの定義では、シナリオテストのことを「ユーザーがシステムを問題なく利用できることを確認するためのテスト」としています。シナリオテストを学ぶために、テストのフローに沿った演習を行っていきます。

 演習の一部を紹介すると、受講者の方が実際に担当しているシステムを例に、アクター(システムにアクセスする利用者や外部システムの役割を示したもの)を洗い出す、というものがありました。下記の写真は、筆者が、CodeZine Academy運営母体である翔泳社の会員システムを例に、アクターを書き出してみたものです。

翔泳社のシステムのアクターを書き出してみたもの。岡野先生がレビューしてくださいます。
翔泳社のシステムのアクターを書き出してみたもの。岡野先生がレビューしてくださいます。

 2日目の最後には、講座の集大成として、とあるECサイトを題材にシナリオテストを設計する演習に取り組みました。分量が多いため、数人ずつのグループに分かれて行い、グループの成果は皆の前で発表します。

グループワーク中
グループワーク中
筆者がシナリオテストのフローについて発表しているところ
筆者がシナリオテストのフローについて発表しているところ

 用意されたカリキュラムだけでなく、テスト設計に関する現場の悩みに答えていただく機会もあります。ぜひ奮ってご参加ください!

7/19(水)、7/20(木)開催! 「テスト設計実践講座」参加者募集

 テストのスペシャリストから「テスト設計ノウハウ」を学ぶことができる講座です。2日間で「組み合わせテスト」と「シナリオテスト」の両方が学べます。

  • 日時:2017年7月19日(水)・20日(木)(2日間) 各日10:00~18:00
  • 場所:翔泳社(東京・四谷三丁目)
  • 参加費:110,000 円(税抜)・1日目のみ60,000円(税抜)【6000円引のペア割有】

 ▼詳細・申込はこちらから ⇒ テスト設計実践講座

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 近藤 佑子(編集部)(コンドウ ユウコ)

    株式会社翔泳社 CodeZine編集部 副編集長、Developers Summit / Developers Boostオーガナイザー。岡山県出身。京都大学、東京大学大学院で建築史を専攻し、フリーランスを経て2014年に翔泳社入社。ITエンジニア向けにコンテンツを発信する編集者として、Webメディ...

All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5