2

現時点では、Jenkins で自動テストを設定しようとしています。4 つの異なるプロジェクトを含む Visual Studio ソリューションがあります。そのうちの 1 つは、他の 3 つのプロジェクトでいくつかのテストを行う NUnit テスト プロジェクトです。

1 Visual Studio の Nunit テスト プロジェクトに、次の内容の PostBuild-Event を追加しました。

`$(SolutionDir)Libs\NUnit-2.6.0.12051\bin\nunit-console.exe $(TargetPath)`

うまくいきますが、これは典型的な方法ですか?Test プロジェクトは私のビルド順序の最後のプロジェクトです。PostBuild イベントを他の 3 つのプロジェクトに追加する意味はないと思いますか?


2 上記のパスからわかるように、私の Visual Studio プロジェクト フォルダーには「Libs」というフォルダーがあります。これは、依存関係を配置する場所であり、NUnit も配置します。しかし、NUnit フォルダーには約 8MB あります。削除できるファイルを教えてください。それ以外の場合は、ソース管理へのコミットごとに、ユーザーは NUnit に対してのみ 8MB を送信する必要があるため、これは少し多すぎると思います。

テストをビルドするには、間違いなく nunit.framework.dll が必要です。テストを実行するには、console-runner.exe も必要です。しかし、他に何が必要ですか?残念ながら、console-runnter.exe は他のファイルに依存しており、それらがないとクラッシュします。

ありがとうございました

4

3 に答える 3

3

私は、Jenkins の下で NUnit を Visual Studio (C#、MSBuild) と統合するために、少し異なるアプローチを使用してきました。VS ソリューションには、その下にいくつかのプロジェクトが含まれており、約 10 個の DLL と 1 個のアプリケーションをビルドします。Visual Studio ソリューションは NUnit を呼び出しません。

「アプリケーション」コードの横には、テスト コードを含むディレクトリがあります。独立して構築されたテスト ソリューションがあります。これは、アプリケーション ソリューションの出力を参照します。

Visual Studio と NUnit の両方が、Jenkins を実行するビルド マシンにアプリケーションとしてインストールされます。

基本的なディレクトリ レイアウト

  • コンポーネント
    • ビン (作成)
    • さまざまなソース ディレクトリ
    • コンポーネント.sln
  • テスト
    • ビン (作成)
    • さまざまな NUnit テスト ケース ソース
    • Tests.sln

Jenkins での基本的なビルド手順

  1. MSBuild ステップを使用して、MSBuild Components/Components.sln
  2. MSBuild ステップを使用して、MSBuild Test/Test.sln
  3. Windows バッチ ファイル ステップを使用して、Tests/Tests.sln で NUnit を呼び出します。

    nunit-console.exe Tests\Tests.sln /xml=nunit-test-results.xml /labels

  4. xUnit Jenkins プラグインを使用してビルド後のアクションをセットアップし、結果を処理nunit-test-results.xmlして表示します。

于 2012-04-24T10:22:34.030 に答える
0

あなたの2つの質問に答えるには:

  1. テスト プロジェクトでビルド後のイベントを使用して、説明したのと同じ方法で NUnit コンソールを実行します。当方の環境では問題なく動作しています。

  2. あなたが言ったように、テストnunit.framework.dll構築するために含める必要があります。それらを実行するには、NUnit コンソールは次のファイルだけで問題なく実行されます。

    bin\nunit-console.exe
    bin\nunit-console.exe.config
    bin\lib\nunit.core.dll
    bin\lib\nunit.core.interfaces.dll
    bin\lib\nunit.util.dll
    bin\lib\nunit-console-runner.dll
    

    これは、NUnit 2.6 の場合、約 500KB のファイルになります。

于 2013-01-21T15:13:24.620 に答える