しかし、冗長な作業を最小限に抑えるために、受け入れテストに単体テストを組み込むことは良い考えでしょうか?
いいえ。
つまり、後者の【受付】が前者の【ユニット】を呼び出してもらう。反対方向に行くことに意味はありますか?
気にしないでください。
受け入れテストはしばしば政治的なものです。直感に基づいて、受け入れるか拒否するかを決定する人々にそれらを示します。
次に、受け入れテストの有効性について議論します。
次に、作業範囲と次のリリースについて議論します。
受け入れテストは一般的に技術的なものではありません。もしそうなら、正式な単体テストがあり、それがそれです。
政治を巧みに操ろうとするな。抱きしめて。起こらせよう。
受け入れテスト駆動開発 (ATDD) が「開発開始前に受け入れテストを作成し、チーム全体で合意する」ことにつながることを期待できます。しかし、事前に書かれていることは、せいぜい偽りであり、最悪の場合は交渉可能であるという現実を反映する必要があります.
すべてのアジャイル手法の背後にある前提は、リリース可能なものに到達することにのみ同意できるということです。それ以降はすべて応相談です。
すべてのテスト ファースト (TDD、ATDD、またはその他のもの) の背後にある前提は、テストが鉄壁の合意であるということです。そうではないことを除いて。どの TDD (または ATDD) 方式でも、テスト結果には原則として同意できますが、テスト自体には同意していません。
テストを簡単に記述できない場合があります。さらに悪いことに、まったく書き込めません。テスト可能に見える結果に同意するかもしれませんが、定義が不十分であることがわかります。今何?これらは、開発を開始して詳細に到達するまで知ることができないものです。
すべてのテストは重要です。また、特定の種類のテストは、他の種類のテストのスーパーセットまたはサブセットになることはできません。それらは常に部分的に重複するセットです。どうにかして作業を節約するために組み合わせようとすると、時間の無駄になる可能性があります。
より多くのテストは何よりも優れています。すべてのテストを結合することは、テスト間にサブセットとスーパーセットの関係を強制しようとするよりも価値があります。