Gallioに精通している方にとって、このツール、いわゆるテスト自動化プラットフォームを使用して、どのような長所と短所を経験しましたか?
7 に答える
現在、Gallio/MbUnit を 1 年間使用しています。私たちはこれにとても満足しています。Gallio の連中はクールな新機能を導入し続けており、開発は活発です。あなたがそれを使用することにした場合、ここにいくつかのヒント/メモがあります:
- TestDriven.NET ライセンスを購入してください - Resharper テスト ランナーは特定のテストの実行方法を認識していないため、Gallio ユニット テストには必須だと思います。
- CI スクリプト/ビルドには、Gallio.Echo コマンド ライン ランナーを使用します。Gallio Icarus - GUI ランナー (少なくとも現在のバージョン) はかなり不安定で、あまりユーザーフレンドリーではありません。
- 最新の Gallio 機能 (並列テストなど) を使用する場合は、Gallio の最新のデイリー ビルドを使用する必要があることに備えてください。これが問題になる場合は、「公式」ビルドを使用してください。ただし、毎日のビルド バージョンでは実際の問題は発生していません。
- 基本的な Gallio の .DLL と .EXE をソース管理に追加することをお勧めします。GAC のプロジェクトではなく、実際にプロジェクトでこれらを参照してください。このようにして、チーム内の誰かが自分のマシンに別のバージョンのガリオをインストールしている場合に、「自分のマシンで動作する」という問題を回避できます。
Gallio も試してみましたが、TDD.Net やネイティブの NUnit GUI テスト ランナーよりもはるかに遅くなります。Resharper ランナーよりもさらに遅いです!
ここでは、NUnit テストの実行について話していることを付け加えておきます。
正確な数値は覚えていませんが、同じテストに約 3 分かかり、NUnit は 30 秒で終了しました (1 つのスレッド、単一プロセス、複数ドメインで実行)。
それ自体がすでにそれをやめる. それにかさばる GUI を追加すると、それを避けなければならないことがわかります。
追加情報:
私のソリューションでは、NUnit テストがあり、最近MSpec 仕様の追加を開始しました。NUnit GUI を開いて、再コンパイルしてテスト dll を変更した後、古いテストを自動的に再実行します (すべての新しいテストは MSpec として記述されます)。
TDD.Net を使用して Mspec 仕様を実行しています。
これにより、NUnit GUI ランナーがまだ終了している間に Specs の実行が終了しても、作業を続けることができます。
Gallioを評価したとき、大規模なプロジェクトで安定性の問題が発生しました。しかし、私たちの小さなプロジェクトは見事に実行されました。素晴らしいコンセプト...もう少し洗練されたら、大きな話題になると思います。
Resharperのサポートがしばらくの間欠落していた(または壊れていた)ことを付け加えたいと思うかもしれませんが、それが戻ってきたと聞いています。
Gallioの最新リリース(3.0.6)は、これらの投稿で言及されている多くの安定性の問題に対処しています。特に、Icarusは現在、はるかに安定しており、組み込みのデバッガーに接続できるため、各テスト実行の前にコードを再コンパイルするResharperよりもさらに高速に使用できます。
ひどく不安定です。私は約 3 ~ 4 か月前に使用しましたが、ひどい不安定で遅いものでした。
今試してみたところ、「保存」をクリックするとクラッシュし、「ローカル設定」をクリーンアップしない限り、再び開くことはありません。まだひどく不安定だと思います。
新機能の追加をやめて、代わりにこれらの明らかなバグを修正してほしいと思います。
PS Project は 1000~ の単体テストを取得し、nUnit を使用しています (おそらく、それは私の nUnit と Gallio がうまく連携していないためです)。
私は本当にそれを使用したいのですが、3.1 - 313 を持っています。プロジェクトを保存することさえできずにクラッシュしました!
結局のところ、悪いものの利点は次のとおりです。
さまざまなフレーバーの優れたサポート。nUnit と mbUnit に使用しましたが、本当に優れています。nUnit の RowTest も非常によくサポートします。
GUIはかなりクールでクリーン
- 作業ディレクトリの設定などの優れた機能を手に入れました
- レポートと統合
利点の面では、すべてとの統合は非常に優れています:)真剣に、私はVisual Studio Team Systemとの実験的な統合の大ファンです(スクリーンショットはこちら)。これは、単体テストを初めて使用する人にとっては、実際に基準を下げると思います。
これまでの私の観点からの唯一の欠点は、それがまだリリースされていないという事実です。
私はガリオを評価してきましたが、本当に素晴らしいコンセプトです。今では、私が知っているすべての主要なフレームワークと統合されているため、どのユニット テスト フレームワークを使用する必要があるかを開発者に伝える必要はありません。彼らは最も使いやすいものを使用でき、単体テスト済みのコードを入手できます。
Resharperの統合も素晴らしいです。コマンドラインにジャンプして実行することなく、Resharper を使用してすべての単体テストを実行できます。
私の意見では、これにより、ショップへの単体テストの導入が確実に容易になるはずです。@Davidに同意しますが、欠点はまだリリースされていないことです。