失敗したテストを追加する必要があると主張しますが、明示的に「失敗したテスト」としてではありません。
@BenVoigtが答えで指摘しているように、テストの失敗は必ずしも「ビルドを壊す」とは限りません。用語はチームごとに異なる可能性があると思いますが、コードはコンパイルされたままで、製品はテストに失敗しても出荷できます。
この状況で自問すべきことは、
テストの目的は何ですか?
誰もがコードについて気分を良くするためだけにテストが存在する場合、コードについて誰もが気分を悪くするためだけに失敗したテストを追加しても、生産的ではないようです。しかし、そもそもテストの生産性はどの程度ですか?
私の主張は、テストはビジネス要件の反映であるべきだということです。だから、「バグ」は要件が適切に満たされていないことを示しているが発見された場合、あるもテストが適切または完全にビジネス要件を反映していないことを示し。
それが最初に修正されるバグです。「失敗したテストを追加する」のではありません。あなたはしている修正テストがビジネス要件をより正確に反映します。コードがそれらのテストに合格しない場合、それは良いことです。それはテストが仕事をしていることを意味します。
コードを修正する優先順位は、ビジネスによって決定されます。しかし、テストが修正されるまで、その優先順位を本当に決定できますか?ビジネスは、何が失敗しているか、どのように失敗しているか、そしてなぜ失敗しているのかを正確に把握して、優先順位を決定する必要があります。テストはこれを示す必要があります。
完全にパスしないテストを持つことは悪いことではありません。既知の問題の重要なアーティファクトを作成し、それに応じて優先順位を付けて処理します。完全にはないテスト持つテストを、しかし、問題となっています。テスト自体の価値に疑問を投げかけます。
別の言い方をすれば... ビルドは既に壊れています。あなたが決めているのは、その事実に注意を喚起するかどうかです。