我正在重写一个控制台应用程序并尝试使用单元测试。我在Windows 7 PC上的Visual Studio 2010中使用NUnit,C#,.NET Framework 4。
当我在应用程序中更改代码时,我的单元测试不会获取最新的更改。我可以看到NUnit正在重新加载但由于某种原因它没有获得最新版本。让NUnit使用最新版本的唯一方法是删除对Console应用程序的引用,将其添加回来并进行编译。
有没有办法避免这样做?我认为问题是控制台应用程序被编译为EXE,而对于大多数应用程序,我已经过单元测试,它们往往是DLL。
修改
我曾希望这个问题:Unit Testing a Console Application inside Visual Studio包含答案。如果你看一下接受的答案,这就是我一直在进行的方式,但是我的测试项目没有取得变化。我现在已经创建了一个类库,我正在应用我的测试。我的控制台应用程序只需加载,然后调用此类库。
第二次修改
我现在已将代码放到可以测试功能的阶段,我注意到我的控制台应用程序存在同样的问题。虽然它“说”它引用了已编译的DLL,但它只在我删除并重新附加引用时才会获取最新的更改。所以,我认为问题不一定与NUnit相关,而是与控制台应用程序的问题/怪癖。