7

我正在尝试使用 NuGet 管理器在 Visual Studio 2012 Express 中设置简单的 NUnit 项目。从 PROJECT-> Manage NuGet Packages 我安装了 NUnit(框架)并想要添加 NUnit.Runner 但在安装过程中我收到:

'NUnit.Runners 2.6.2' already installed.

好的,但是当我转到 TOOLS->Library Package Manager->Manage nuGet Packages for Solution 时,NUnit(框架)和 NUnit.Runners 都显示为已安装。

我可以在代码中使用 NUnit 框架,但是当我尝试运行测试时,旧的“测试资源管理器”仍然存在并且不显示任何内容。也不调用测试。

我在 VS2012 或 NUnit 配置中遗漏了什么吗?

4

3 回答 3

6

我发现 Visual Studio Express 不支持项目扩展(微软禁止和禁用)。因此,如果没有一些变通方法,似乎没有选择使用 NUnit。到目前为止,我安装了完整版,并且 NUnit runner 按预期工作。

于 2012-11-14T13:31:46.670 回答
5

您还可以使用此博客文章评论中提到的方法 sombody :

  1. 在测试程序集中添加对 nunit-console-runner 的引用。

  2. 在您的测试程序集中,使用以下一个衬垫创建一个类(见下文

  3. 打开测试程序集的属性。例如,右键单击程序集并选择属性。

    1. 在应用程序选项卡上,选择输出类型:Windows 应用程序;和启动对象:NUItConolseRunner(上面的文件)。

    2. 在 Debug 选项卡上,在 Command Line Arguments 中输入 .csproj 文件名;并浏览到工作目录中 .csproj 文件的文件夹。

  4. 保存所有内容,设置断点并使用 F5 或绿色箭头按钮运行。

代码:

using System;
namespace MotorExampleTests
{     
    // Written by blokeley
   class NUnitConsoleRunner
   {

     [STAThread]
     static void Main(string[] args)
     {
         NUnit.ConsoleRunner.Runner.Main(args);
     }
   }
}
于 2013-04-28T17:21:48.147 回答
4

为什么不使用 VS2012 内置的 testrunner 并通过扩展管理器添加 nunit testadapter?

于 2012-11-14T19:11:09.387 回答