ラベル

blogger (2) C/C++ (23) CSS (1) DB (4) EXCEL (2) HTML (2) iphone (1) JavaScript (8) JScript (10) Lua (14) Objective-C (1) photoshop (1) PHP (10) Smarty (1) sqlite iphone (1) Tips (24) UML (1) VC++ (2) WSH (8) Xcode (2) コミュニケーション (2) コンパイルエラー (7) デザインパターン (4) テスト (3) マネージメント (1) 開発 (11) 心理学 (12) 生活 (2) 豆知識 (1) 遊び (1)
ラベル テスト の投稿を表示しています。 すべての投稿を表示
ラベル テスト の投稿を表示しています。 すべての投稿を表示

2010年6月11日金曜日

テストケースのひな形

基本的なテストケースひな形を書いておく
IDテスト内容前提条件インプット/手順期待結果実施日テスト結果
1ユーザの新規登録特になし
step1:ユーザ登録画面を起動する

step2:ユーザ情報を入力する

step3:登録ボタンをクリックする
ユーザ一覧に登録したユーザが表示されること2010-06-11OK,NG,NT(not test:廃止)

2010年5月6日木曜日

テストケースの上げ方について

今日はテストケースのデータを上げる際に気をつけていることを簡単に書きます。

1.数値のゼロ、文字のブランク
  これらの値はプログラマが考慮していない場合が多いのでケースに上げています。

2.境界値
 有効な範囲の境界となる値です。例えば3~6が有効な値だった場合、
  • 正常ケースで3と6
  • 異常ケースで2と7
 を上げるようにしています。

3.意地悪な値
 「1.」と同じような考え方ですが、何とかしてバグを見つけてやる、こんな値は考慮してないだろう、どうだー!?っていう値を考えますw。
 
以上です。(たった3つかよ!何か忘れている気がしなくもないですが・・・
箇条書きにするとたった3つですが、この3つが頭に入っていれば十分な品質が確保出来るんじゃないでしょうか?

2010年4月30日金曜日

テスト駆動型開発の基本的な考え方について

今日はテスト駆動型開発の基本的な考え方について書きます。(間違ってたらすいません)
テスト駆動型開発って聞くとすごく難しい感じがしますが、
コードを書く前にテストケースを上げる
ただそれだけのことです。
テスト駆動型開発によって得られるメリットは
  • 仕様を把握していないとテストケースが作れない、つまり仕様の理解を深めることが出来る、あいまいな部分をなくすことが出来る。
  • 仕様の理解を深めることによってバグが少ない、かつ拡張性が高い、かつメンテナンスしやすい設計が出来る可能性が高くなる。
  • 仕様に矛盾や問題があるとテストケースが作れない、つまり仕様書レベルでバグをつぶすことが出来る。
などです。
私が以前関わっていたプロジェクトではテストを自動化し、
  1. 仕様書を確認する。
  2. テストケースを上げる。
  3.  「1.叉は2.」で仕様書に矛盾や問題が有った場合は仕様書を差し戻す。
  4. 自動化の為のテストケースコードを記述する。
  5. 設計&実装
  6. テストケースを通す。
のような手順で開発して、毎朝その日の最新ソースで全てのテストコードを実行し常に品質を確保していました。