2016-03-31 15 views
3

Travis CIを使用してリモートビルドをセットアップしました。ここに私の設定ファイルは次のとおりです。これは実行時にTravis CIはNUnit 3 Console Runnerを実行できません

language: csharp 
solution: DungeonGen.sln 
install: 
    - nuget restore DungeonGen.sln 
    - nuget install NUnit.Runners -OutputDirectory testrunner 
script: 
    - xbuild DungeonGen.sln /p:TargetFrameworkVersion="v4.5.1" /p:Configuration=Stress 
    - mono ./testrunner/NUnit.Console.*/tools/nunit3-console.exe ./Tests/Unit/Common/bin/Stress/DungeonGen.Tests.Unit.Common.dll 
    - mono ./testrunner/NUnit.Console.*/tools/nunit3-console.exe ./Tests/Unit/Generators/bin/Stress/DungeonGen.Tests.Unit.Generators.dll 
    - mono ./testrunner/NUnit.Console.*/tools/nunit3-console.exe ./Tests/Unit/Selectors/bin/Stress/DungeonGen.Tests.Unit.Selectors.dll 
    - mono ./testrunner/NUnit.Console.*/tools/nunit3-console.exe ./Tests/Unit/Mappers/bin/Stress/DungeonGen.Tests.Unit.Mappers.dll 
    - mono ./testrunner/NUnit.Console.*/tools/nunit3-console.exe ./Tests/Unit/Tables/bin/Stress/DungeonGen.Tests.Unit.Tables.dll 
    - mono ./testrunner/NUnit.Console.*/tools/nunit3-console.exe ./Tests/Integration/Bootstrap/bin/Stress/DungeonGen.Tests.Integration.Bootstrap.dll 
    - mono ./testrunner/NUnit.Console.*/tools/nunit3-console.exe ./Tests/Integration/Tables/bin/Stress/DungeonGen.Tests.Integration.Tables.dll 
    - mono ./testrunner/NUnit.Console.*/tools/nunit3-console.exe ./Tests/Integration/Stress/bin/Stress/DungeonGen.Tests.Integration.Stress.dll 

しかし、私は次の例外を取得:

$ mono ./testrunner/NUnit.Console.*/tools/nunit3-console.exe ./Tests/Unit/Common/bin/Stress/DungeonGen.Tests.Unit.Common.dll 
Cannot open assembly './testrunner/NUnit.Console.*/tools/nunit3-console.exe': No such file or directory. 
The command "mono ./testrunner/NUnit.Console.*/tools/nunit3-console.exe ./Tests/Unit/Common/bin/Stress/DungeonGen.Tests.Unit.Common.dll" exited with 2. 

この例外は、私がテストのためにロードしようとするすべてのDLLのために繰り返されます。 the documentation for Travis CIによれば、パスにワイルドカードを使用できるはずです。正常に動作します。しかし、それが問題を引き起こしているか、Travisがインストールしたばかりのexeを見られないという問題があります。誰かがこれに対する解決策を知っていますか?私は本当にNUnitのバージョンをハードコーディングしたくないです - 可能な限り最新のバージョンを使用したいと思います。バージョンをハードコーディング

UPDATEは助けなかった - 3.2.0に設定され、私はまだ同じエラーを取得:

$ mono ./testrunner/NUnit.Console.3.2.0/tools/nunit3-console.exe ./Tests/Unit/Common/bin/Stress/DungeonGen.Tests.Unit.Common.dll 
Cannot open assembly './testrunner/NUnit.Console.3.2.0/tools/nunit3-console.exe': No such file or directory. 
The command "mono ./testrunner/NUnit.Console.3.2.0/tools/nunit3-console.exe ./Tests/Unit/Common/bin/Stress/DungeonGen.Tests.Unit.Common.dll" exited with 2. 

答えて

5

があることが判明:

install: 
    - nuget restore DungeonGen.sln 
    - nuget install NUnit.Runners -Version 3.2.0 -OutputDirectory testrunner 

はこれを生成しますパッケージのインストールディレクトリが間違っていた:./testrunner/NUnit.Console.3.2.0/tools/nunit3-console.exeの代わりに、それは./testrunner/NUnit.ConsoleRunner.3.2.0/tools/nunit3-console.exeであったはずです。これがいつ変更されたのかは分かりませんが、現在は機能しています。

関連する問題