Where should the Gallio, and MBUnit assembly be located to be found by the NBehaveTask

May 27, 2009 at 10:22 PM

Where should the Gallio, and MBUnit assembly be located to be found by the NBehaveTask?

I am attempting to run the following NBehaveTask with MSBuild

            TestAssemblies="@(TestAssemblies)" />

I have the following project structure


In the root I have a Go.bat that callls MSBuild to execute. That looks like this:

"C:\Windows\Microsoft.NET\Framework\v3.5\msbuild.exe" /t:RunBDDTests build\MSBuild.debug.xml

But I keep getting a


"C:\Projects\RHP\sandbox\Poc.NBehaveMSBuild\build\MSBuild.debug.xml" (RunBDDT
ests target) (1) ->
(RunBDDTests target) ->
  C:\Projects\RHP\sandbox\Poc.NBehaveMSBuild\build\MSBuild.debug.xml(47,3): e
rror MSB4018: The "NBehaveTask" task failed unexpectedly.\r
C:\Projects\RHP\sandbox\Poc.NBehaveMSBuild\build\MSBuild.debug.xml(47,3): err
or MSB4018: System.IO.FileNotFoundException: Could not load file or assembly 'M
bUnit, Version=,

I do have the right versions of the Gallio, and MBUnit files I just don't know where to place them so MSBuild can find them.  I assume the GAC its an overkill, as it would add additional requirements to configuring my build process.



May 28, 2009 at 2:15 AM

Solved it on my own.  I was having GAC issues, apparently the version of the Gallio/MbUnit installation in my build server was v3.0.6 (or something like it).  To solve the issue I just made sure to set the 'use specific version' on the project that holds my testfixtures and reference the proper assemblies.  I might fool around some more and just build NBehave after updating the references to the current Gallio/MBUnit version.




May 28, 2009 at 12:10 PM

Glad you got it sorted out.  Sounds like it's time to update our references in NBehave!