4

SQL Server のストアド プロシージャと関数のみを使用して実装されるプロジェクトで、Test First Development を実装したいと考えています。

ストアド プロシージャと関数の単体テストの実装を簡素化する方法はありますか? そうでない場合、それらの単体テストを作成するための最良の戦略は何ですか?

4

3 に答える 3

1

それは実行可能です。テストを作成し、セットアップで db の新しいインスタンスを作成し、それにデータを与えてから、procs を実行します。正しいデータが戻ってきたように、あなたの仮定を検証してください。テストデータベースをドロップしてから、次のテストですべてやり直してください。

于 2013-07-04T14:25:54.017 に答える
1

データベースでの単体テストは実際には大きなトピックであり、それを行うにはさまざまな方法があります。最も簡単な方法は、次のように独自のテストを作成することです。

BEGIN TRY
<statement to test>
THROW 50000,'No error raised',16;
END TRY
BEGIN CATCH
if ERROR_MESSAGE() not like '%<constraint being violated>%'
THROW 50000,'<Description of Operation> Failed',16;
END CATCH

このようにして、さまざまな種類のデータ テストを実装できます。 - CHECK 制約、外部キー制約テスト、一意性テストなど...

于 2013-07-04T15:30:06.860 に答える