问题标签 [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.
node.js - Visual Studio 2017 使用摩卡
我在 Visual Studio 2017 中有一个 nodejs 项目,我正在尝试使用 mocha 进行单元测试。由于某种原因,如果测试资源管理器需要任何不在 node_modules 中的文件,则无法找到单元测试。
我有一个简单的测试 index.spec.js 并且测试资源管理器能够找到单元测试:
我有一个相同的测试 heros.spec.js 并添加了“var heros = require('./heroes');” 它没有找到单元测试。我认为它找不到英雄。文件 heros.js 与 heros.spec.js 位于同一文件夹中。我还用 ./heroes.js 进行了尝试。在这两个文件中,TestFramework 都设置为 Mocha
这是文件 heros.spec.js
我缩小了问题的范围。hero.js 引用了其他模块,其中一个模块引用了 db.js,它使用 config 来设置 dbConfig。如果我替换代码并对值进行硬编码,则会找到单元测试。我有一个解决方法,但我想正确地做到这一点。我尝试在项目属性中设置环境变量 NODE_ENV=test 并创建一个 test.config。问题仍然存在。知道如何正确执行此操作吗?
这是我的工作
//var dbConfig = config.get('dbConfig');
谢谢
automated-tests - Resharper,仅在连续测试会话中按类别跳过测试
1)是否可以在 Resharper 中,仅在“连续测试会话”中按类别跳过测试,但如果您只是从 R# 测试资源管理器运行它们,它们就不会被忽略。
2)还有人知道是否有一个设置阻止VS内置的测试资源管理器更新,现在安装了R#。它确实会更新,但非常断断续续
unit-testing - 第二个项目未在测试资源管理器中显示测试
我有一个基于 nUnit 的解决方案,其中包含一个测试项目。我创建的所有测试都显示在测试资源管理器窗口中,我可以执行等等。
我在解决方案中添加了另一个单元测试项目,创建了与第一个项目完全相同的引用、相同的 nUnit 版本、相同的平台目标(任何 CPU)、相同的代码结构等,只是针对不同的产品。但是我向该项目添加了测试(带有测试属性),它们没有显示在测试资源管理器中。
我在原始项目中的所有测试仍然显示,但在我的新项目中没有测试显示。
如何从多个项目中获取测试以显示在测试资源管理器窗口中?测试资源管理器窗口是否与特定项目相关联?
c# - 尝试运行按类分组的测试用例时,ClassInitialize 不执行
我有几个TestClasses,每个TestMethods 都很少。再次,我需要为每个TestMethods 创建数据,所有这些都是SuiteBase 文件中的句柄,每个TestClasses 都继承该文件。我需要为每个 TestClass 创建一次数据,以便该类中的所有 TestMethods 都可以使用相同的数据。为此,我将数据创建代码放在 SuiteBase 文件的 ClassInitialize 下。SuiteBase 的结构:
测试类结构:
现在我正在尝试从我的测试资源管理器中运行单元测试(按类分组)。
理论上,在任何 TestMethods 开始之前,SuiteBase 中的 ClassInitialize 代码应该首先工作。但我看到 ClassInitialize 代码不只是运行。我在ClassInitialize中放了一个断点并调试,代码根本没有执行。我对 ClassInitialize 的行为的假设是错误的,还是我在这里做一些根本错误的事情?
c# - 使用列名(来自 CSV 文件)作为使用 Nunit 的测试的名称
我正在尝试使用列值作为测试的名称,以便所有行在 Visual Studio 的“测试资源管理器”窗格中逐行显示。
以下是我使用 CSV 文件中的数据的测试。我尝试使用“TestName”属性并切片(“{15:16}”)我想用作测试名称的字符串部分的默认名称。我现在肯定做得正确,因为它只是给了我方法名称的名称。
第二种方法是我的读操作。此外,我不喜欢将我的数据分配给变量然后必须传递它们。我真的在寻找一种更优雅的方法来解决读取和使用 CSV 数据进行命名和测试的问题,所以如果有人有任何经验或想法,我很想听听他们的意见。
如果我遗漏了任何可以进一步阐明我的目标的信息,请告诉我。
visual-studio - 在 Visual Studio 的测试资源管理器中跟踪活动项
就像文件可以跟踪解决方案资源管理器中的活动项目一样。是否可以在测试资源管理器上做同样的事情?
- 类文件可以指向测试资源管理器中的类。
- 方法可以指向测试资源管理器中的测试方法。
c# - How do I run .cs tests that I normally run in the Visual Studio Test Explorer, in the command line?
While I'm developing, I often have to run about 5-6 tests to populate the data I need for tests. I want to automate this so I don't have to right-click/"Run" every time.
How can I get the command that VS is running so that I can just put it into a quick script that runs all the tests I need to run, in a single click (or single command) ?
c++ - 如何在 Visual Studio 2017 的测试资源管理器中显示 Boost Test 测试用例层次结构?
我有一个使用 Boost Test 的单元测试文件,如下所示:
我使用测试套件名称的目的是在 Boost 测试用例层次结构中的一个节点下Cloner_
收集该类的所有测试用例。Cloner_
当我选择在 Visual Studio 中运行所有测试时,它会检测到这个层次结构:
但是,它不显示层次结构,只是它使用主 Boost 测试模块名称cppx_tests
(在单独的文件中定义)作为根:
(Visual Studio 的测试资源管理器对测试用例的展示在上面的屏幕截图的右侧。)
我想避免使用老式的 C 样式名称前缀,因为 Boost Test 确实提供了一种定义层次结构的方法,并且由于测试资源管理器在搜索要执行的测试时报告该层次结构中的路径,因此它显然知道它。
那么,如何使 VS Test Explorer 显示使用 Boost Test 进行测试的测试用例层次结构,以便我可以轻松识别例如default_construction
X 类与 Y 类或 Z 类的测试,或者这是不可能的?