2012-04-06 2 views
4

私は最近、TST(tst.codeplex.com)を使用してストアドプロシージャをテストし始めました。これは非常に有用です.1つの欠点は、依存関係を分離できず、 '他のSP /関数呼び出し(例えば、C#オブジェクト依存関係の場合と同様です)。この機能をTSTに追加したり、新しいフレームワークを書いたりするのに時間を費やしても構いませんが、実際に始める方法もわかりません。TSTの使用中にSPコール(他のSPから)を取得する

アイデア?どんな助けもありがたい。

PS:テストではSPが決して設計されていなかったことは知っていますが、これは100sのSPが既に存在するレガシープロジェクトにとって大きな恩恵です。

答えて

0

自分自身と似たようなことに苦しんでいますが、次のことがSPを嘲笑するアプローチになるかどうか疑問に思います。ただ、嘲笑SPを必要とするテストにテストフレームワークをする必要があり実行する前に

  • (例えばへ:HiddenSp)オリジナルのSPの名前を変更
  • 同じパラメータ
  • 中で新しいSpのを作成新しいSPは、模擬応答が必要なパラメータの組み合わせを確認するコードを追加します。
  • 必要に応じて模擬応答を提供します。
  • または
  • テスト
  • 我々はTSTを使用していないが、methinks私が追加されます、元のSP

の名前を元に戻すモック

  • を削除実行
  • 元SPにスルー要求を渡しますこれは私たちの手によるSQLテストフレームワークのようなものです。数週間それに気づかないので、これがあなたのために働くかどうか聞いてみたいと思います。

  • 2

    本当に前の答えを助けるのは、名前変更のアプローチが理想とはかけ離れているものの、機能します。私は、SSDTのデータベースプロジェクトのために意味のブログ記事で、それを-EDのデモが、原理は同じです:

    http://tsqlt.org/user-guide/isolating-dependencies/

    https://tangodude.wordpress.com/2014/02/08/ssdt-database-projects-mocking-database-objects-for-isolated-unit-testing-kind-of/

    tSQLtはしかしからかっにオールラウンドより良いサポートを持っています

    関連する問題