ソフトウェアの欠陥、不良のことを指す。
バグによって、本来の機能が制限され、そのソフトウェアに期待される機能を顧客やユーザーに提供できないこと。
- バグをすべて見つけるのは無理
- バグは平均的に散らばっているのではなく、特定の部分に集中している。
- どの部分にバグが出やすく、そこにどのようなテスト手法を適用すれば十分な品質が得られるのかを知ることが重要
- テストケースを書くことのほうが、テストコードを書くことよりも難しい
プログラムの分岐をどのくらい網羅しているかを表した数値
プログラムの論理構造が正しいか解析するテストのこと。
- 入力
- 出力
- 計算
- 保存
ソフトウェアやシステムへの入力を同じ処理をするグループに 分割し、グループ内の入力を同等に扱えるようにする技法
期待される値
有効同値以外の値。よくある値は、マイナスとか0とか。
同値分割ってなんだろう? http://qualab.jp/materials/q_te.140528.color.pdf
有効同値と無効同値の境目をテストすること。
この境目にバグが起きやすく、同値分割法とセットで使用される。
- ユニットテストはプログラマが書いたコードが、プログラマが期待された振る舞いをするかどうかを検証するためのプログラムである
- 設計が完璧であるとは限らない
- なので、ユニットテストを行っていくことで、プロダクションコードが修正されていくことが目的である。
ユニットテストにまつわる10の勘違い https://dev.classmethod.jp/testing/10_errors_about_unit_testing/
- 有効同値、無効同値は?
- 境界値は?
- バグが起こりやすい箇所を決定
- 必要のないテストはないか?