问题标签 [test-explorer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3480 浏览

unit-testing - 如何在 Visual Studio 2012 中禁用测试资源管理器

我使用 ReSharper 在 Visual Studio 2012 中运行单元测试。

在运行单元测试时,我不时不小心调用了内置的测试资源管理器,而不是 ReSharper 测试运行器。

如何在 Visual Studio 2012 中禁用测试资源管理器,这样我就不会意外调用它?

0 投票
2 回答
2174 浏览

unit-testing - 在 VS 2012 测试资源管理器中使用多个过滤器

我想在 Visual Studio 2012 测试资源管理器搜索过滤器框中过滤多个条件。我想获得具有特征“A”或“B”的测试我已经尝试了以下几个版本但没有运气:特征:“Integration”|“UnitTest”Trait:“Integration”|Trait:“UnitTest”

单独搜索 1 个特征就可以了。我已经加载了最新的 VS 2012 CTP,这就是我可以按特征搜索的原因。

0 投票
1 回答
1006 浏览

visual-studio - 如何检测解决方案是否正在使用 VisualStudio 扩展中的 DTE 进行初始化?

我正在使用 DTE 跟踪项目何时从解决方案中加载和删除,以便我可以更新自定义测试资源管理器扩展。然后我触发一个容器发现过程。但是当第一次加载解决方案时,它会异步加载一些项目并触发大量项目添加事件。

我真正想做的是忽略所有这些事件,直到解决方案完成加载。我不能完全弄清楚事件的顺序,以便我确定这个初始化过程已经完成。能够只查询解决方案对象并询问它会非常好。有谁知道我是否可以使用属性或接口或事件来确定这一点?

0 投票
1 回答
1438 浏览

visual-studio - 如何使用 Visual Studio 2012 的 NUnit 测试适配器运行 SharePoint 测试?

VS 2012的NUnit 测试适配器允许您通过测试资源管理器从 Visual Studio 2012 IDE 中运行 NUnit 测试。但是,我首先进行 NUnit 测试的原因是因为我有针对 SharePoint 2010 编写的测试(我知道,这些是集成测试,而不是单元测试),由于需要通过 64 访问 SharePoint API -bit 客户端意味着 MSTest/VS 无法运行它们。

我希望使用 NUnit 测试适配器,但是,我能够从 Visual Studio 的测试资源管理器中运行 SharePoint 测试,但我不断收到错误消息:

这向我表明 NUnit 测试适配器作为 32 位进程运行(我怀疑该进程是vstest.executionengine.x86.clr20.exe)。

有没有办法使用 Visual Studio 2012 中的 NUnit 测试适配器和测试资源管理器来运行针对 SharePoint 2010 的 NUnit 测试?

0 投票
2 回答
553 浏览

c# - 使用 c# 和 xUnit 在 Visual Studio 2012 的文本资源管理器中显示测试类名称

我在 Visual Studio 2012 中使用带有内置文本资源管理器的 xUnit。如果我有例如

我会在测试资源管理器中看到

作为测试的名称。这有可能吗?此刻我只看到

如果我有很多分布在多个命名空间和测试类中的 Test1 用例,这会很痛苦。

0 投票
2 回答
1981 浏览

visual-studio-2012 - 为什么 VS 2012 测试资源管理器中的场景大纲显示为“外部”?

我有一个场景大纲(又名场景模板),我希望使用 VS 2012 的测试资源管理器列出我的测试。默认测试分组由“项目”名称完成 - 如果我坚持使用它,来自场景大纲的测试将在“外部”组中,而不是在我的项目组下。

为什么会这样,是否有解决方案/解决方法?

我的场景是我想使用测试资源管理器为给定项目运行我的所有测试。为所有人设置相同的特征是愚蠢的,并且容易出现人为错误。

我的解决方案有 10 个这样的项目,并且很快就会添加更多。因此,将项目的场景大纲测试保留在“外部”下可能会导致任何人错过它们或获取属于另一个项目的场景大纲生成的测试。

更新

GitHub 用户 Shashi ( https://github.com/shashiprabhakar ) 已向 SpecFlow 贡献者记录了一个问题:https ://github.com/techtalk/SpecFlow/issues/275 。非常感谢,伙计!我已经开始跟踪它,所以如果在那里提出修复/解决方法,我会在这里发布它作为答案。

0 投票
1 回答
1074 浏览

c# - Visual Studio 2012 测试资源管理器测试正在进行中

在 Visual Studio 2010 中,测试结果视图能够显示当前正在进行的单元测试。在使用 Visual Studio 2012 时,我无法识别正在测试资源管理器中执行的单元测试。如何识别 Visual Studio 2012 测试资源管理器中正在进行的单元测试?

0 投票
2 回答
2176 浏览

c# - xUnit v1 测试出现在 xUnit GUI (xunit.gui.clr4.exe) 但不是 VS 2012 测试资源管理器

我有一个 F# 类库,其中包含使用 NuGet 安装的“xUnit.net”和“xUnit.net Runners”包。我有以下代码:

当我运行 xUnit GUI(xunit.gui.clr4.exe,NuGet 添加到 (projectdirectory)\packages\xunit.runners.1.9.1\tools),并加载此项目构建的程序集时,Test() 方法出现,并且在我运行它时失败,正如预期的那样。

但是,无论我重建、重新启动等多少次,我都无法让测试出现在 VS 2012 的测试资源管理器中。如果单击“全部运行”,则会弹出构建输出窗口,但没有其他任何反应。

为了它,我还安装了 xUnit.net Extensions,尽管我不相信它们对于我正在尝试做的事情是必要的。那也没有帮助。

如果我可以提供更多信息,请告诉我,感谢您的阅读!

0 投票
6 回答
2987 浏览

c# - VS2012 测试资源管理器锁定本机 .dll,导致重建失败

我将 Visual Studio 2012 用于具有 C# 和 C++/CLI .dll 的解决方案,其中 C++/CLI dll 引用本机 .dll,例如 boost。C++ 代码编译为 x64。

当我打开 VS 时,我可以清理和构建我的项目。

使用测试资源管理器,我可以运行我的测试。

一旦我使用测试资源管理器运行测试一次,我就无法重建项目。似乎 VS2012 测试资源管理器锁定了我的 C++/CLI-dll,并且出现以下错误:

因此,每当我使用测试资源管理器运行测试时,我都需要重新启动 VS2012 才能继续开发。显然,这不是一个可持续发展的过程。

仅 C# 的 dll 的测试和重建工作没有问题 - 据我所知,问题只发生在使用本机 x64 代码的 DLL 上。

经过一番测试,我发现这里的反派是vstest.executionengine.exe。使用句柄(来自 SysInternals),我看到 vstest.executionengine.exe 持有 cli-dll 的 .dll 和 .pdb 的锁。它不为仅限托管的 dll 持有任何锁。

测试运行完成后,如何让 Visual Studio 测试资源管理器释放 C++/Cli dll 上的锁?

0 投票
4 回答
23576 浏览

c++ - 如何在 Visual Studio 2012 单元测试中获取控制台输出

我在 VS 2012 中有一个托管 C++ 单元测试。测试运行良好,我可以验证是否cout执行了具有多个调用的循环。

但是,当我查看测试资源管理器时,测试被标记为已通过,但输出没有超链接,因为我习惯于 c# 项目。

我测试结束时的代码是

当我在调试器中单步执行它时,我可以验证它的运行情况。我也尝试过, cerr但没有区别。