忍者式テスト
https://gyazo.com/0c5b203ebfd417c1a8ca5173f2ac314a
(初出スライドより借用)
2004年のJaSSTとXP祭りで最初に発表された。
忍者式の直接の由来はタケカワユキヒデの単語の勉強法から。
手動で実施する
作ったらテストで確認する
受け入れ試験を全部やりなおして壊れてないことを確認
ペアテスト
ストーリーの意図を考えテストケースをアレンジ
実施時に内容を見直す
不具合はストーリーと同様に追加
対策後には確認のためのテストが追加される
毎日成長するテストを飛び続ける
@ledsunの解説
2021年の説明
https://www.youtube.com/watch?v=Z_N4PqcE3AU
miwa(@miwa719)
#icare_meetup 『忍者式テストとテスターのロール』当日使用したスライドを公開しました!
受け入れテスト
システム全体で結合した状態で試す
試すことのできないストーリーは作ることが許されない
ユーザーが使うのと同じように一連の流れで試す
ストーリーは着手してから2,3日でコミットするものが多い
ストーリーは、他のストーリーと関連し合っているので、システムとしてちゃんと動くことが必要
「受け入れ試験はストーリーの出発点。ストーリーを作っていく過程でずっと考え続ける。」
作るまえ、作っているとき、作ったあともずっと受け入れ試験で考えている
やり直す
ストーリーが増えるたびに、全てやり直す
手動でやっている
変遷、うまくいかなかったこと、どうやりなおしたか、いつのどのストーリーでバグが出たか、など
ストーリーを読み直して、現在の頭で考えて、テストを実施する
当時のストーリーが今日のテストでどう壊せるか?
全く同じテストをやり直しても、発見されていないエラーは発見されない
だから考え直して新しいテストをして、エラーを発見する
過去の膨大なテストのメンテナンスが、自然に行われる
誰がやるのか
2001年
毎日、全ストーリーの受け入れ試験を関がやり直す
プログラムを書かずにテストをやり続けた
その後、プログラマ全員が毎日1時間ずつやる時間割制に
問題を見つける能力が高くなる
「忍者式テストはプログラマが行うテストである」
プログラマのロール
欲しいものを実現する人たち
仕様を具体的にする
実装を考える
プログラムを書く・直す
テストをする(テストを「書く」のではない)
テスターなにしてんの?
プログラマより長い時間製品を触ることができる
テスターは全体を気にすることができる
全体的な手触り、仕様の差異
問題を見つける範囲が広い
テストが丁寧
「品質が大事」とか、「影響範囲が」という雑な話はしない
もっと詳細な話をしている
テスターは、「プログラムを書く・直す」がないだけ。プログラマとの違いはそこ。
2023年の説明
資料