我已经安装了新的 Visual Studio 2012 Ultimate。
我用我的解决方案创建了一个测试项目,它包含一些默认的单元测试。但是,右键单击新方法不再显示“创建单元测试”上下文菜单。
请参阅 Visual Studio 2010 Ultimate:
和 Visual Studio 2012 Ultimate:
知道为什么会这样吗?
更新:
Visual Studio 2012 和 2013 的解决方案:
我已经安装了新的 Visual Studio 2012 Ultimate。
我用我的解决方案创建了一个测试项目,它包含一些默认的单元测试。但是,右键单击新方法不再显示“创建单元测试”上下文菜单。
请参阅 Visual Studio 2010 Ultimate:
和 Visual Studio 2012 Ultimate:
知道为什么会这样吗?
更新:
Visual Studio 2012 和 2013 的解决方案:
此功能是从 VS 中删除的。
生成单元测试向导 - 在 VS2010 中,您可以右键单击代码中的方法,我们会在您的测试项目中生成单元测试。该向导与 MS-Test 紧密耦合,并且依赖于私有访问器等功能来完成其工作,因此它被删除了。我们正在这里探索替代方案,但还没有任何好的解决方案。
编辑有一个解决方法:http: //blogs.msdn.com/b/malaysia/archive/2013/02/20/right-click-create-unit-tests.aspx
菜单项仍然存在,但由于未知原因,它在代码编辑器中不可见。但是您可以使用 Visual Studio 命令来运行单元测试向导。你需要的命令是
EditorContextMenus.CodeWindow.CreateUnitTests
打开命令窗口并在那里键入命令。或按如下方式键入别名命令
alias ut EditorContextMenus.CodeWindow.CreateUnitTests
并分配别名以更快地运行命令。
运行向导的另一种方法是键盘快捷键。在 Visual Studio 中打开
Tools -> Options -> Environment -> Keyboard
在“显示包含的命令”文本框中键入“createunit”以过滤掉 CreateUnitTests 命令,选中它。在“使用新的快捷键”组合中选择“文本编辑器”,然后在“按下快捷键”文本字段中按您想要的快捷键(例如,Ctrl+T、Ctrl+C)。最后,按分配按钮。享受!
以下是如何再次启用它:
方法 1 - 命令窗口
如果你觉得够难,你会发现调用 Create Unit Tests... 的命令实际上是:
EditorContextMenus.CodeWindow.CreateUnitTests
您实际上可以在命令行窗口中键入它来调用创建单元测试向导。如果您觉得它太冗长,您实际上可以为它创建一个别名。
别名 ut EditorContextMenus.CodeWindow.CreateUnitTests
然后只需键入 ut 即可启动向导。
方法 2 - 键盘快捷键
下一个方法是转到工具->选项->环境->键盘并设置您喜欢的快捷键。
方法 3 - 重新启用创建单元测试...上下文菜单。
要重新启用 Create Unit Tests... 菜单,请转到 Tools->Customize... 以启动 Customize 对话框。在自定义对话框中,转到命令选项卡,选择上下文菜单单选按钮并选择编辑器上下文菜单 | 代码窗口。
您将意识到菜单项实际上在上下文菜单中可用。VS 开发人员很友好地把它留给了我们。
单击“创建单元测试...”菜单项,然后单击“下移”,直到它在“运行测试...”命令上/下。然后单击关闭。
重新启动 Visual Studio 2012,就是这样!上下文菜单将可用!
您可能会发现使用上述任何一种方法都可能不起作用。即命令窗口将告诉您该命令不可用,键盘快捷键将不会触发,或者上下文菜单将可用但被禁用。
为了让所有这些工作,您首先需要在您的解决方案中有一个单元测试项目。创建单元测试项目后,您将需要手动将单元测试项目添加到项目中,即使项目单独展开也是如此。完成此操作后,一切都会像在 Visual Studio 2010 中一样正常运行。您可以安全地删除那些 UnitTest1.cs 文件。
来源(有图片,我没有足够的代表点来放置它们):
http ://serena-yeoh.blogspot.fr/2013/02/visual-studio-2012-create-unit-test.html
(ps:阅读注意事项!!!!)
intruder的答案对许多用户不起作用。当我在命令窗口中输入 UT 时,有时会出现以下情况
>UT
Command "EditorContextMenus.CodeWindow.CreateUnitTests" is not available.
但有时它适用于相同的解决方案,因此行为似乎是断断续续的。
借助Dawa Law的帖子“<a href="http://dl.my/2013/create-unit-tests-function-not-available-or-disabled/" rel="nofollow noreferrer">创建单元测试...功能不可用或禁用”我发现在每个 Visual Studio 会话期间,您需要手动创建一个测试类,然后才能使用向导。
如果您在解决方案中有一个现有的单元测试项目,
在解决方案资源管理器中,右键单击单元测试项目 -> 添加 -> 单元测试... 这将创建一个新的单元测试类并触发 Visual Studio 现有的单元测试类可用,从而启用创建单元测试向导。注意:您可以删除创建的单元测试类文件(UnitTestX.cs),因为它是用于触发功能的。
如果解决方案中没有现有的单元测试项目,则需要在添加手动类之前创建它:
转到 File –> Add –> New Project... 在 Add New Project 窗口中,选择 Installed –> Visual C# –> Test –> Unit Test Project。给它一个有意义的名称,然后单击确定
Dawa Law的 帖子“<a href="http://dl.my/2013/create-unit-tests-function-not-available-or-disabled/" rel="nofollow noreferrer">创建单元测试... ” Function Not Available or Disabled 有快照来说明每个步骤。
请注意,VS 2012 创建单元测试向导仅支持公共方法的生成测试,而在以前的版本中也支持私有方法。
.
“创建单元测试”菜单在测试版中被删除。我不确定是否有计划将其带回。如果您确实有问题,请在 Visual Studio UserVoice 网站上请求:http: //visualstudio.uservoice.com/
您可以通过从此处导入以下 vssettings 来重新获得右键单击“创建单元测试...” 。
http://blogs.msdn.com/b/malaysia/archive/2013/02/20/right-click-create-unit-tests.aspx
方法 3 - 重新启用创建单元测试...上下文菜单。
这是迄今为止最好的方法。要重新启用 Create Unit Tests... 菜单,请转到 Tools->Customize... 以启动 Customize 对话框。在自定义对话框中,转到命令选项卡,选择上下文菜单单选按钮并选择编辑器上下文菜单 | 代码窗口。
“您可能会发现使用上述任何一种方法都可能不起作用。即命令窗口会告诉您该命令不可用,键盘快捷键不会触发,或者上下文菜单将可用但被禁用。
为了让所有这些工作,您首先需要在您的解决方案中有一个单元测试项目。创建单元测试项目后,您将需要手动将单元测试项目添加到项目中,即使项目单独展开也是如此。完成此操作后,一切都会像在 Visual Studio 2010 中一样正常运行。您可以安全地删除那些 UnitTest1.cs 文件。”
(迈克尔·弗赖德海姆)