Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ソフトウェアテスト第4章
Search
nikawa2161
October 17, 2024
1
4
ソフトウェアテスト第4章
nikawa2161
October 17, 2024
Tweet
Share
More Decks by nikawa2161
See All by nikawa2161
レプリカ遅延
nikawa2161
1
1
vitest
nikawa2161
1
2
ロードテスト
nikawa2161
1
6
Typescriptドメインモデリング
nikawa2161
1
7
テスト駆動開発の定義
nikawa2161
1
9
ソフトウェアテスト第3章
nikawa2161
1
6
ハッカソン
nikawa2161
1
2.4k
ソフトウェアテスト第2章
nikawa2161
1
3
ソフトウェアテスト第1章
nikawa2161
2
6
Featured
See All Featured
What's new in Ruby 2.0
geeforr
343
31k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Building an army of robots
kneath
302
43k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
900
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Adopting Sorbet at Scale
ufuk
73
9.1k
Six Lessons from altMBA
skipperchong
27
3.5k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Rails Girls Zürich Keynote
gr2m
94
13k
The Pragmatic Product Professional
lauravandoore
31
6.3k
[RailsConf 2023] Rails as a piece of cake
palkan
52
4.9k
Transcript
知識ゼロから学ぶ ソフトウェアテスト 第4章 created by: Ô @nikawa2161 | @nikawa2161 |
✉
[email protected]
Table of contents ⏪ ブラックボックステスト
よろしくお願いします
ブラックボックス
ホワイトボックス 論理構造が正しいかを解析するテスト →プログラムの中にある if ⽂やループの部分がきちんと動作してい るか (ステートメント/ブランチカバレッジの話) ブラックボックス 外部から⾒た動作や機能に焦点を当てたテスト →フォームに正しい⼊⼒を⾏った際に、期待した結果が得られるか
ホワイトボックス 論理構造が正しいかを解析するテスト →プログラムの中にある if ⽂やループの部分がきちんと動作してい るか (ステートメント/ブランチカバレッジの話) ブラックボックス 外部から⾒た動作や機能に焦点を当てたテスト →フォームに正しい⼊⼒を⾏った際に、期待した結果が得られるか
ソフトウェアとは
ソフトウェアの4つの仕事
ブラックボックス
境界値テスト
None
None
「境界」にはバグがある
if(a >= 1) { console.log("aは1以上"); } else { console.log("aは1未満"); }
サンプルコード // >と>=の間違い if(a > 1) { console.log("aは1以上"); } else { console.log("aは1未満"); } // 数字の書き間違い if(a >= 2) { console.log("aは1以上"); } else { console.log("aは1未満"); } // 境界がない if(a >= 1) { console.log("aは1以上"); }
境界のどこをテストするか On-Offポイント
仕様:3900円で送料無料
None
// 正解 if(a >= 1) { console.log("aは1以上"); } else {
console.log("aは1未満"); } // >と>=の間違い if(a > 1) { console.log("aは1以上"); } else { console.log("aは1未満"); }
ディシジョンテーブルテスト 複雑な⼊出⼒のためのテスト
仕様 ⼊⼒A:1から999まで⼊⼒可能 ⼊⼒B:1から999まで⼊⼒可能 出⼒:AxB パターン ABとも正しい Aだけ正しい Bだけ正しい ABとも正しくない
None
状態遷移テスト GUIをテストする
None
状態遷移で⾒つかるバグ 期待していない状態に遷移するバグ 分岐やswitch⽂などが正しく書かれていない 遷移⾃体がない場合 ある状態からある状態に遷移できない
None
None
None
まとめ 最も重要で、最も時間を費やし、最も簡単なテスト このテスト⼿法で、⼀番多くのバグが⾒つかる
境界値→ディシジョンテーブル→状態遷移
次回
考えておりません
ご清聴ありがとうございました