在一个更大的构建文件中,我有以下NAnt目标:
<target name="load-gallio">
<loadtasks assembly="lib/Gallio.NAntTasks.dll" />
</target>
<target name="test" depends="load-gallio">
<gallio failonerror="true">
<files>
<include name="target/tests.dll" />
</files>
</gallio>
</target>tests.dll在Gallio命令行运行器和Icarus上运行得很好。当我运行"nant test“时,我得到了以下结果:
load-gallio:
test:
[gallio] Gallio NAnt Task - Version 3.4 build 12
[gallio] Start time: 11:12
[gallio] Stop time: 11:12 (Total execution time: 0.881 seconds)
BUILD FAILED
INTERNAL ERROR
Gallio.Runtime.RuntimeException: Could not resolve component for service type 'Gallio.Runner.Projects.ITestProjectM
anager' because there do not appear to be any components registered and enabled for that service type.
at Gallio.Runtime.Extensibility.RegistryServiceLocator.ResolveNonDisabledDescriptor(Type serviceType)
at Gallio.Runtime.Extensibility.RegistryServiceLocator.Resolve[TService]()
at Gallio.Runner.TestLauncher.RunWithRuntime()
at Gallio.Runner.TestLauncher.Run()
at Gallio.NAntTasks.GallioTask.RunLauncher(TestLauncher launcher)
at Gallio.NAntTasks.GallioTask.InternalExecute()
at Gallio.NAntTasks.GallioTask.ExecuteTask()
at NAnt.Core.Task.Execute()
at NAnt.Core.Target.Execute()
at NAnt.Core.Project.Execute(String targetName, Boolean forceDependencies)
at NAnt.Core.Project.Execute()
at NAnt.Core.Project.Run()这一切为什么要发生?我是否遗漏了某种运行时设置/服务注册步骤?这是一个bug吗?提前感谢您的时间和帮助。
发布于 2013-01-29 11:34:00
我倾向于直接调用运行器,因为它通常更灵活,并且通常消除了nant和实用程序之间的依赖关系。我不知道这对你来说是不是一个选择,但如果它是一个例子,可能是:
<exec program="gallio.echo.exe" basedir="Utilities" verbose="true">
<arg line="target/tests.dll"/>
<arg value="/rt:XML"/>
<arg value="/rd:Reports"/>
<arg value="/no-echo-results"/>
<arg value="/f:exclude Category:RunManually"/>
</exec> 有关命令行参数的完整文档可以在here中找到。
https://stackoverflow.com/questions/14560983
复制相似问题