Hi Steve, thanks for posting!
The first thing I would check very thoroughly here is to make sure that the IEDriverServer.exe file is in the same directory as Selenium is expecting to find it. NCrunch's workspacing can create an obscure situation where the bin\debug directory of your test project is not necessarily the same bin\debug directory of the other projects being referenced by your test project.
The exception message suggests that the file is being searched for in the current directory. The test runner will usually set the current directory as equal to the bin\debug directory of the test project. There may be a way you can establish for certain whether the file is in the right place by just writing a simple test inside the same test project:
[Test]
public void CheckIfFileExists()
{
Assert.That(File.Exists("IEDriverServer.exe"));
}
If the logic searching for the file doesn't give you any easy options, it is actually possible to set the PATH environment variable inside the test process to include an extra search location. If the file is always at a known location relative to the test's bin\debug directory, you could drop this on the PATH prior to the driver being instantiated. Another option could be to reference the IEDriverServer.exe in its original solution location by using the data provided by the
NCrunch environment class, although I would only suggest this as a last resort as it can impact NCrunch's workspace isolation.