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
5.8k
2
Share
ソフトウェアテスト第4章
nikawa2161
October 17, 2024
More Decks by nikawa2161
See All by nikawa2161
Node.js Subpath imports
nikawa2161
0
15
Sagaパターン入門(続編)
nikawa2161
0
28
Sagaパターン入門
nikawa2161
0
35
沖縄観光とPostgreSQL排他制約の話
nikawa2161
0
33
20251209_プログラミング原則の学び
nikawa2161
0
22
自分のコードを数年ぶりに読んだら
nikawa2161
0
16
ユーザーインタビュー分析に参加して得られたことと気づき
nikawa2161
0
22
oEmbedとは?
nikawa2161
0
73
はじめまして、にかわです
nikawa2161
0
18
Featured
See All Featured
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.6k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.3k
The Invisible Side of Design
smashingmag
302
52k
For a Future-Friendly Web
brad_frost
183
10k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
310
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.6k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.7k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
74k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
380
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
560
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
まとめ 最も重要で、最も時間を費やし、最も簡単なテスト このテスト⼿法で、⼀番多くのバグが⾒つかる
境界値→ディシジョンテーブル→状態遷移
次回
考えておりません
ご清聴ありがとうございました