4.3K Views
June 10, 23
スライド概要
WACATE2023夏1日目のテスト技法選択のセッション資料です。
ソフトウェアエンジニア
テスト設計技法の選択 2023/6/10 WACATE2023夏
自己紹介 角玄 涼(かくげん りょう) 2022夏からWACATE実行委員(2019冬、2021夏、2021冬に参加) 組込みソフト開発者 ⇒ テストエンジニア 自動車のエンジン制御、建設機械の車体制御 犬派(一度猫を飼ってみたい) 2023/6/10 WACATE 2023 夏 2
目次 本セッションの目的 テスト設計の目的 テスト設計に入る前に ○ テスト分析結果のダメな例 ○ テスト分析結果のチェックポイント テスト設計技法の選択 ○ 技法の選択時に意識してほしいこと ○ 技法の選択と併せて考えておくべきこと ワーク まとめ 2023/6/10 WACATE 2023 夏 3
本セッションの目的 テスト設計の目的を理解する テスト設計に必要な情報を理解する テスト設計技法選択時のポイントを理解する 2023/6/10 WACATE 2023 夏 4
※:高位(ハイ)レベルテストケース ⇒具体的な入力値や期待結果を 使わないテストケース テスト設計の目的 テストプロセスの話の振り返り テスト分析は「何をテストするか」を決定し、テスト設計は 「それをどうテストするか」を決定する テスト設計では高位(ハイ)レベルテストケース(※)を作成する 効率よく効果的なテストをする為に、 テスト設計技法を適用して、 テストケースに落とし込む 2023/6/10 WACATE 2023 夏 目的 手段 5
なぜテスト設計技法を適用するのか テスト設計技法は過去の先人たちの知恵 テスト設計を支援する方法(手順)やツール 一般的で、誰でも使えて、有用なもの もちろん技法を自分で作ってもよいですが、 有用なものが既にあるなら使わない手はない! 2023/6/10 WACATE 2023 夏 6
テスト設計に入る前に こんなテスト分析結果だとテスト設計できない 【ダメな例】(テスト分析セッションのおさらい) 〇〇画面、△△画面とか、〇〇項目、△△項目のようなテスト アイテムの列挙に終始している テスト条件が整理されていない、内容が曖昧 テスト対象を十分に理解できていない 何をテストするのかが明確になっていない 2023/6/10 WACATE 2023 夏 7
テスト設計に入る前に テスト分析結果のチェックポイント テストすべき特色、特質から何をテストするのかが明確になっている テスト条件の入出力や振る舞い、期待結果が明確になっているか 因子と水準がイメージできるか テスト設計技法を適用できるレベルに テスト対象を分解、整理する必要がある! テスト分析する際には テスト設計技法を理解しておくことも重要 2023/6/10 WACATE 2023 夏 8
テスト設計技法の選択 技法の選択時に意識してほしいこと 各テスト設計技法の特長を理解した上で、テスト条件に対して どの技法を適用すれば、効率よく効果的なテストを実施できるのか 適切なテスト設計技法を適用しないと、 必要なテストが漏れたり、 無駄なテストをしてしまうことになる テスト設計の目的を意識してほしい 2023/6/10 WACATE 2023 夏 9
テスト設計技法の選択 技法の選択と併せて考えておくべきこと 作成したテストケースをどこまで実施するか 技法を適用して作成した全てのテストケースを実施すれば よいわけではない テストケース作成後に考えてもよいが、技法選択時から テスト対象の特徴を考慮したテストケースを意識してほしい 技法選択はテスト設計の為の1ステップであり、 ゴールではない 2023/6/10 WACATE 2023 夏 10
ワーク テスト分析セッションのワークで作成したテスト分析結果に 対して、どのテスト設計技法を適用するか考えてみよう ワークの流れ 2023/6/10 テスト分析時に作成したマインドマップの末端(テスト条件)に テスト設計技法を書いた付箋を貼り付ける 貼り付けた付箋を元にグループ内で議論する WACATE 2023 夏 11
ワーク ● グループワーク(1分) ● マインドマップの全ての末端(テスト条件)に番号を振る ④ ⑤ ⑥ 2023/6/10 ① ② ③ ⑨ ⑩ ⑪ ⑫ ⑬ WACATE 2023 夏 ⑦ ⑧ 12
ワーク ● 個人ワーク(4分) ● 手元で付箋を用意して、番号ごとに適用する技法を考える ● “技法を適用できない” or “適用不要”と判断した場合はその理由を記載 【付箋イメージ】 対応する番号 (複数の番号を一つの 付箋にまとめない) 2023/6/10 ③ 角玄 デシジョン テーブル テスト WACATE 2023 夏 書いた人 テスト設計技法 もしくは “技法を適用できない” “適用不要”の理由 13
ワーク ● グループワーク(25分) ● マインドマップに一斉に付箋を貼り付けて、グループ内で議論 2023/6/10 WACATE 2023 夏 14
ワーク ● グループワークでの注意点 ● 時間に限りがあるので全ての番号に対して議論できなくても構いません どの番号から議論するかは各グループで決めてください ● 以下のような場合はテスト条件の抽象度が適切でない可能性が高いので、 テスト条件の見直しを行ってください 複数のテスト設計技法を適用できそう テスト設計技法を適用できない 2023/6/10 WACATE 2023 夏 15
ワーク後の解説 ● テスト条件の抽象度が適切でない例(1) ● 一つのテスト条件に対して、複数のテスト設計技法を適用できそうな 場合は何をテストしたいのか明確にして、テスト条件を整理する デシジョン テーブル テスト 境界値 分析 2023/6/10 入力条件の 組み合わせが 気になる 入力条件の 上限値が 気になる WACATE 2023 夏 デシジョン テーブル テスト テスト条件を具体化 境界値 分析 16
ワーク後の解説 ● テスト条件の抽象度が適切でない例(2) ● テスト設計技法を適用できない場合は、テスト条件の抽象度を上げる 境界値 分析 具体的なパラメータまで 指定されている場合は どうすれば・・・ 2023/6/10 テスト条件を抽象化 WACATE 2023 夏 17
まとめ テスト設計では、効率よく効果的なテストをする為に、 テスト設計技法を適用して具体的なテストケースに落とし込む テスト設計する為には、テスト設計技法を適用できるレベルに テスト対象を分解、整理する必要がある 適切なテスト設計技法を選択する為には、 各テスト設計技法の特長を理解しておく必要がある 2023/6/10 テストケースをどこまで実施するかを考えることも重要 WACATE 2023 夏 18
参考資料 ISTQBテスト技術者資格制度Foundation Level シラバス 日本語版 過去のWACATE資料 2023/6/10 テスト技法の背景を考察する(WACATE2021夏) テスト設計技法の適用・・・その前に(WACATE2017夏) WACATE 2023 夏 19
以上 ワークお疲れ様でした! 2023/6/10 WACATE 2023 夏 20