DBの整合性チェックを制約ではなくコードでやる発想
DB制約 | DB整合性チェックをコードでやる | 自動テスト | |
---|---|---|---|
テスト対象 | データ | データ | ロジック |
変更容易か? | × | ○ | ○ |
データに対するテストはロジックに対するテストで検出できないバグを検出可能です。
例えば、銀行で、全ての口座のin out、全てのATMのin outの合計が0になるというテストは、口座とATMに関する多くのロジックをテストできます。
銀行ならシステムの変更頻度が低いので(実際どうかしりませんが)、DB制約でもいいかもしれませんが、ウェブサービスのように変更頻度が高い場合、DB制約だと保守性が悪くなります。
かといって、自動テスト + カバレッジ100%だと、テストケース漏れを防げません。
そこで、DB整合性チェックを用意して、本番DBをチェックしておけば、良いのでは?
Author And Source
この問題について(DBの整合性チェックを制約ではなくコードでやる発想), 我々は、より多くの情報をここで見つけました https://qiita.com/engineer/items/30e6ba09e46a30857c2c著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .