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



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

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

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

在"测试视图"("测试->Windows ->测试视图")和"测试结果"("测试->Windows ->测试结果")中,可以按多个不同的标准对测试进行分组,其中一个标准是"项目"。在Test View中,您可以选择一个项目并点击"run selection"按钮。


编辑:

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


编辑2

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

我想你是在寻找测试类别。

最新更新