我可以根据项目自动将测试分配给测试列表吗?

时间:2011-08-17 19:44:48

标签: c# visual-studio-2010 unit-testing tdd mstest

我最近将我们模糊定义的单元测试项目拆分为两个项目,一个用于单元测试,一个用于(我们的大部分测试都是)集成测试。这是希望不要巧妙地激励我们的开发团队(包括我自己)编写更好的测试和更容易测试的代码。 (并且,通过扩展,更容易单元测试。)

这样做,我发现在Visual Studio中使用MSTest实际上有点令人沮丧,因为它很慢但更重要的是它想要在给定的解决方案中运行所有测试而不是在给定项目中的所有测试。我已经越过了第一个障碍,因为我最终遇到了测试列表编辑器,它允许您创建列表,然后将测试分配给列表。我创建了一个单元测试列表,检查了单元测试项目中的所有测试并将它们拖过来,并对集成测试做了同样的事情。您可以独立运行每个列表。

这让我们了解问题的核心:是否可以简单地让这些列表自行增长? IE。,我可以将整个项目绑定到列表中,或者至少让列表自行更新吗?我想让我们的开发人员(包括我自己)尽可能简单地使这些列表保持最新,最重要的是,实际运行测试。

2 个答案:

答案 0 :(得分:2)

在测试视图(测试 - > Windows - >测试视图)和测试结果(测试 - > Windows - >测试结果)中,您可以按多个不同的标准对测试进行分组,其中一个是Project 。在测试视图中,您可以选择一个项目并单击“运行选择”按钮。


修改

请注意,如果您希望在测试视图中自动更新新测试,则需要取消选中“工具 - >选项 - >测试中的”禁用测试方法的后台发现“选项工具 - >测试项目“(进行此更改后重新启动VS)。如果选中此选项,则需要在添加任何新测试之前单击“刷新”。


修改2

更多信息:您可以为“运行选择”分配键盘快捷键(例如Ctrl R,S),这样即使测试视图窗口没有,您也可以运行测试视图中当前所选项目的所有测试没有焦点(它需要在某处开放)。因此,在测试视图中,您可以选择当前正在使用的项目,在该项目中打开测试类,添加测试,然后立即按下键盘快捷键,项目中的所有测试(包括新测试)都将运行。

答案 1 :(得分:1)

我认为您正在寻找test categories