13

私の問題は非常に単純です。msbuild と mstest を実行する CI サーバーがあります。

問題はMicrosoft.VisualStudio.QualityTools.UnitTestFramework.dll、サーバーにVSをインストールしないと、CIサーバーとしてはかなりばかげているため、存在しないことです(mstestに関連する他のファイルもあると思います...)。

どうすればこれを修正できますか?

4

4 に答える 4

8

残念ながら、2005年または2008年にビルドエージェントマシンにVSをインストールする必要があることを回避するためのサポートされた簡単な方法はありません(2010年にテストエージェントインストーラーがあります)。更新:ほぼ同じことを言っている詳細については、スティーブ・スミスからのこの投稿を参照してください

アセンブリが欠落しているだけではありません。テストを実行する場合、ランナーは単なる個別の小さなEXEとDLLではありません。

はい、信じられません!言うまでもなく、地球上でこの制限がある他のテストフレームワークはほとんどないため、多くのテストがない限り、さまざまな理由で移動を検討できます。たとえば、次のようなさまざまな理由があります。 MSTestを使用して..。

編集:Rihanの返信に促されて、私はVisualStudioなしで次の実行中のmstestを呼び出しました。-完全にはサポートされていませんが、「機能します」...

編集2:Visual StudioなしでMSTestを実行する-Gallioは、サポートされており、ハッキーではないという点で、はるかに有望に見えます。NBこの投稿に関する@JohannesRudolphのコメントを参照してください。

編集3:この質問に関する2010年のステータスに関する情報を追加

注:MSTestの/publishパラメーターをサポートするために必要なものに関して2008年にも同様の質問があります。- TeamBuildサーバーでMSTEST.exe/ publishを実行します。前提条件は何ですか?

于 2009-06-05T09:17:22.510 に答える
3

@Ruben Bartelink : テスト エージェントをインストールすることで、マシンに mstest.exe を取得できます。@指定された場所で見つけることができます。インストール後、mstest.exe を /testcontainer および /test オプションで起動します。正常に実行され、trx ファイルが作成されます。trx を処理してレポートを生成できるものを確認してください。

http://www.microsoft.com/en-us/download/details.aspx?id=38186

于 2014-05-26T15:31:30.480 に答える
2

私と Visual Studio 2010 の具体的な解決策は次のとおりです。

  1. Visual Studio Agents 2010から「Test Agent 2010」をインストールします。
  2. Windows を再起動する
  3. Visual Studio 2010 Service Pack 1をインストールする
  4. Windows を再起動する
  5. プロジェクトの参照が「10.0.0.0」ではなく「Microsoft.VisualStudio.QualityTools.UnitTestFramework」「10.1.0.0」を指すように更新されていることを確認します。
于 2012-11-07T13:51:19.573 に答える
0

統合サーバーにCruiseControlがセットアップされています。Visual Studioをインストールしていませんが、MSTESTアセンブリをGACにコピーしました。次に、Cruise Control Documentationを使用して、テストレポートを設定しました。非常にうまく機能します。

于 2009-06-05T09:31:35.913 に答える