類似の質問は以前に回答されていましたが、問題は解決しませんでした。ベストプラクティスのテスト:CRUD用api
私は、作成、読み取り、更新、および削除の方法でAPIをテストしています。各機能を個別にテストすることが最善の方法と考えられます。しかし、
テストするには、私は読む必要があります。 読み取りをテストするには、作成する必要があります。 アップデートをテストするには、作成して読み込む必要があります。 削除をテストします。私は作成する必要があります!
私はこのAPI以外の他の(例えば、下位層API)メカニズムを検証していません。
この場合、すべてを使って1つの長いテストを書くべきですか?または4つの異なるテスト。それぞれ特別な設定とティアダウンロジックを備えています。
おかげ
私はたくさんのコードが好きではありません。より複雑なセットアップ* 4とティアダウンロジック* 4のために。しかし、これは正確な問題を釘付けにするための価格だと思われる。たとえば、testReadが失敗した場合は、セットアップが失敗した(つまり書き込みに失敗した)か、読み込みに失敗したことを知る必要があります。 –
@AsadIqbal - すべてと同様、常にトレードオフがあります。この場合と私の個人的な好み、それはそれの価値がある。 –
私はエラーの位置を特定することに同意しません。私たちはOPの問題について覚えている場合、私はテストCreateShouldCreateARecordが失敗するのを見て、どのように私はそれが誤ってレコードを作成していたか、または多分ちょうど読んで失敗し、私に偽陰性を与えたか知っていますか?私は両方の機能とデバッグのコードを見て終わります。もしそうなら、私は何も得られませんが、私はより多くのセットアップ、ティアダウンなどを書く必要があります。 –