結合テストフレームワーク?
-
13-09-2019 - |
質問
ブラックボックス統合テストをカバーするテスト フレームワークを探しています。開発者以外でもスクリプト化できるものが必要です (C# 単体テスト タイプのものではありません)。
私が念頭に置いている最初のシナリオは次のとおりです。
- 既知の DB を復元する
- SQLエージェントジョブ(ETL)の実行
- 出力 DB に対して検証 SQL スクリプトを実行する
そして
- msiインストールを実行する
- フォルダー/ファイル/RegKeys/サービスなどの存在を確認します。
- msiアンインストールを実行する
これまでのところ、適切と思われるものは見つかりませんでした。主に UI テスト (Project White など) を使用しますが、これらのケースはカバーしません。または、単体テスト フレームワーク ベースの統合テストですが、まだ QA チームを推進する準備ができていません。
現在、他に何も見つからない場合は、テストのこの部分のために独自の内部ツールを導入することを実験中です。
解決
それはあなたが、コマンドラインパラメータの束を実行するために、右?
たいように見えますまあ、私はそれを行うには、2つの方法を参照してください。
1)あなた自身のドメイン固有言語を発明することができます。それはあなたには、いくつかの非常に非常に高いレベルの機能とインタプリタを書くというのファンシーな方法です。非技術的な人々は、バッチファイルのようなものを書き、そしてあなたがファイルを読み込み、いくつかのC#を書き込み、switchステートメントを実行し、その後、コマンドを実行します。 FITは、おそらくこれを行うための最も一般的な方法である - それは、統合テストのためのフレームワークです。 (これを行う方法は、カンマで物事を分離することである:。。コマンド、PARAM1、PARAM2それは信じられないほど簡単なアセンブラプログラムだふり次に、あなたのswitch文はparam1..paramxを取り、文字列の配列でそれらをスティックや関数にすることを渡します。関数は、アレイを処理する。)
これに伴う問題は、あなたの顧客は、変数をしたいということです。彼らは、ループをお勧めします。そしてもうすぐ、あなたはcolumner形式のデータを読み込み、トリノ - 完全なプログラミングインタプリタを実装しました。それは臭います。
あなたができるよう...
2)顧客のスクリプト言語を教えます。私はPerlとテスト::以上に見てね - 。おそらくやルビーテストのもののいくつかを
そして、それが動作しない場合は、おそらくあなたが....
3)顧客はすべてのテストを作成した上であきらめます。その代わり、その後、戻ってコードに変換することを、顧客とのペアは、アウトラインを作成するtoolsmithを持っています。
あなたがブラウザを運転していた場合は、、私はセレンまたはワチールをお勧めしますが、それはあなたしているコマンドライン-Yのように見えます。
私をドロップし、電子メール(matt.heusser@gmail.com)以上の情報のための私のブログ(xndev.blogspot.com)のテストフレームワークについて読みました。私のブログは、テストフレームワーク何グーグルを尋ねるための第2位の検索結果ですので、私はそれを推薦快適です。 : - )
について、
- Heusserの