Travis ci Travis CI can';t运行NUnit 3控制台运行程序
我使用Travis CI设置了远程构建。这是我的配置文件:Travis ci Travis CI can';t运行NUnit 3控制台运行程序,travis-ci,nunit-console,nunit-3.0,Travis Ci,Nunit Console,Nunit 3.0,我使用Travis CI设置了远程构建。这是我的配置文件: 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:Conf
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,都会重复此异常。据我所知,我应该能够使用路径中的通配符,而且效果很好。但是,这可能会导致问题,或者其他一些问题会阻止Travis看到它刚刚安装的exe。有人知道这个问题的解决方案吗?我真的不想硬编码NUnit的一个版本——我想使用最新的版本
更新硬编码版本没有帮助-设置为3.2.0,我仍然收到相同的错误:
install:
- nuget restore DungeonGen.sln
- nuget install NUnit.Runners -Version 3.2.0 -OutputDirectory testrunner
产生以下结果:
$ 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.
结果表明包安装目录是错误的:它应该是
/testrunner/NUnit.Console.3.2.0/tools/nunit3 Console.exe
,而不是/testrunner/NUnit.ConsoleRunner.3.2.0/tools/nunit3 Console.exe
。不确定这是什么时候改变的,但它现在起作用了