私の友人は、職場で TDD とピンポン ペアリングを行う方法を説明していました。つまり、テスト作成者がキーボードを実装者に渡すと、実装者はテストに合格するために最も単純な (そして時には間違ったことを) しようとします。
たとえば、GetName() メソッドをテストしていて、テストが「Sally」をチェックする場合、GetName メソッドの実装は次のようになります。
public string GetName(){
return "Sally";
}
もちろん、これは(単純に)テストに合格します。
彼は、これにより、コンポーネントの実際の動作や期待される状態をテストするのではなく、特定の定型値をチェックする単純なテストをなくすことができると説明しています。また、より多くのテストを作成し、最終的には設計を改善してバグを減らすのにも役立ちます。
いい感じですが、彼との短いセッションでは、1回のテストを通過するのに他の場合よりもはるかに時間がかかったように見え、多くの余分な価値が得られたとは感じませんでした.
あなたはこのアプローチを使用していますか?