1. ソフトウェアテストについて
ソフトウェア開発におけるテストの定義
- ある条件下
- 使用するデータ
- 動作環境
- 事前の操作手順
- ソフトウェアの振る舞いを記録できる
- データやデータベースの状態
- 画面表示(人が確認するだけでOKな場合もあり)
- 期待される結果との検証
ソフトウェアテストの目的
- 品質保証(メイン)
- 仕様が不足なく実装されていること
- 設計が妥当であることを検証
用語の確認
- テストケース
- テストスイート
2. ユニットテストについて
ユニットテストのパターン
[xUnit Test Pattern]参照
ユニットテストを行う目的
- プログラマにとって重要なスキル
- クラスやメソッドがプログラマの期待した振る舞いであることを検証
ユニットテストで確認しないこと(機能テストや受け入れテスト)
- クラスやメソッドの相互作用
- ソフトウェアの機能の確認
- 品質の保証
P2参照
P31参照
ユニットテストを書きやすい部分
テストコードをテスト仕様書にする
付録
ユニットテストの定義は企業文化によって変わる
P3参照
製造業と建築業とソフトウェア開発
P25参照
「動作するコードはけっして触ってはいけない?」
Java以外でのユニットテストフレームワーク
- JavaScript
- C#
- C++
test