问题标签 [nunit-3.0]

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 投票
1 回答
743 浏览

unit-testing - NUnit 3 是否删除了测试的“经典”语法?

Nunit 目前有两种写作风格 test

经典款式

新风格

NUnit 2.9.3的发行说明(向下滚动!)说

已删除对旧式测试的支持

他们的意思是删除了经典样式吗?

0 投票
5 回答
20786 浏览

c# - NUnit3:Assert.Throws 与异步任务

我正在尝试将测试移植到 NUnit3 并收到 System.ArgumentException:不支持“async void”方法,请改用“async Task”。

Assert.Throws 似乎采用了一个 TestDelegate,定义为:

因此 ArgumentException。移植此代码的最佳方法是什么?

0 投票
2 回答
3074 浏览

parallel-testing - 使用 NUnit v3 alpha 在注意到 [Parallelizable(ParallelScope.Fixtures)] 后如何让我的 TestFixtures 并行运行

使用 NUnit v3,我将 [Parallelizable(ParallelScope.Fixtures)] 添加到 2 个单独的 [TestFixtures]。

积极的是它们运行,消极的是它们不并行运行,我是否缺少需要在代码中注明的语法?我已经看过并且目前处于 alpha 阶段,它们支持并行运行 TestFixtures,而不是在 Fixture 中进行测试。

但是我没有看到我的测试并行运行。我的目标是酱实验室。

每个测试都线性运行并成功,为我的目的在 TestFixture 级别运行有效。但是我觉得我在这里错过了一个概念。

任何帮助都会很好地帮助我弄清楚为什么这不起作用。

谢谢任

0 投票
1 回答
179 浏览

c# - 如何在 VS2015RC 中使用 NUnit 3

是否可以在 VS2015RC 中使用 NUnit3 Beta?

我刚刚创建了一个新的库项目(包)并添加了 NUnit 并创建了一个简单的测试来显示我遇到的错误。

它是否依赖于旧版本的框架?

项目.json

设置

测试班

错误

更新 发行说明说:

要变通解决此问题,请按照下列步骤操作: 右键单击​​解决方案资源管理器中报告错误的项目,然后单击卸载项目。在解决方案资源管理器中再次右键单击该项目,然后单击编辑。

注意 在此命令中,代表实际项目名称。在没有 Condition 属性的项目文件顶部的条目中,添加以下内容:

true 保存并关闭文件。在解决方案资源管理器中右键单击项目名称,然后单击重新加载项目。

但是我无法让它工作,我只是在我的错误窗口中收到更多警告和错误。

0 投票
2 回答
1219 浏览

nunit - Nunit3如何根据从TestFixtureSource传递的参数更改测试用例名称

我正在使用 NUnit 3.0 和 TestFixtureSource 在具有不同参数/配置的夹具内多次运行测试用例(我确实想在 TestFixture 级别执行此操作)。简单的例子:

假设 Test() 对其中一种配置失败,而对另一种配置成功。在运行报告文件和 Visual Studio 的测试资源管理器中,失败和成功运行的名称将仅显示为 Test(),它不会告诉我有关哪个设置导致问题的任何信息。

有没有办法在这种情况下影响测试用例的名称(即在每个夹具运行/配置的名称前加上前缀)?作为一种解决方法,我目前正在每个测试用例触发之前打印到结果输出,但我宁愿避免这样做。

由于 NUnit 3.0 处于测试阶段,而且这个功能相当新,我无法在文档中找到任何内容。我找到了 TestCaseData 但我认为它还没有被定制为与夹具一起使用(它是为测试用例设计的)。

0 投票
0 回答
92 浏览

c# - Nunit 3.0 Beta 4;没有使用 TestCaseSource 发现测试用例

我有一个项目,我正在读取测试用例的 excel 文件。用于读取 excel 并将用例映射到 C# 类的代码是这样完成的

测试方法是这样的

现在所有这一切都适用于 Nunit 2.6.4,但在 beta 版本中,在发现测试用例时不会读取 excel。我需要使用测试版的 TestFixtureSource 和 TestCaseSource。

0 投票
2 回答
1073 浏览

teamcity - 无法从 teamcity 运行 nunit 3.0 测试

尝试在 teamcity 中运行 nunit3.0 测试。如果我使用任何其他 nunit 版本,它工作正常。我正在使用以下配置来运行测试。你能告诉我我在这里缺少什么吗? 在此处输入图像描述

Teamcity 抛出以下错误:-

问题在于相对路径。Nunit3.0 控制台不支持任何相对路径。

0 投票
1 回答
4828 浏览

testing - NUnit 3.0 中是否有测试状态属性?

在 NUnit v. < 3.0 中有 TestContext 类,并且有一个属性可以告诉我们之前运行的测试的状态。

要访问我们可以使用的属性TestContext.CurrentContext.Result.Status

现在在 NUnit 3.0 中没有属性 as Status!所以我所有的测试都需要改变。

我的问题是下一个:是否可以像在以前的版本中那样在 NUnit 3.0 中获得测试状态?

有趣的事情:有类TestStatus具有属性:Passed, Failed等,我们用它来与当前状态进行比较。这个类存在于 NUnit 3.0 中!

我的代码:

0 投票
8 回答
12747 浏览

teamcity - 如何在 TeamCity 9.x 中安装 nUnit 3 nunit3-console.exe

TeamCity 9.1.x 现在支持 NUnit 3.0,但是您必须安装运行程序并在步骤中指定 nunit3.console.exe 的路径。我的问题是我在哪里复制 nunit3-console.exe?我必须把这个放在所有的代理上吗?我是否将它放在我的 TeamCity 主服务器上的目录中,它会被代理共享或拉取?似乎没有很好的文档说明将这些文件复制到何处以便所有代理都可以使用它们。

0 投票
3 回答
41398 浏览

c# - NUnit 3.0 和 Assert.Throws

我正在使用 NUnit 3.0 编写一些单元测试,并且与 v2.x 不同,ExpectedException()它已从库中删除。

基于这个答案,我绝对可以看到试图在测试中具体捕获一个期望他们的系统抛出异常的逻辑(而不是仅仅说“测试中的任何地方”)。

但是,我倾向于对我的 Arrange、Act 和 Assert 步骤非常明确,这使它成为一个挑战。

我曾经做过类似的事情:

现在我需要做类似的事情:

在我看来,这并不可怕,但会使 Act 和 Assert 变得混乱。(显然,对于这个简单的测试,它并不难遵循,但在较大的测试中可能更具挑战性)。

我有一位同事建议我完全摆脱它,Assert.Throws而只是做一些类似的事情:

在这里,我坚持使用严格的 AAA 格式,但代价是更加臃肿。

所以我的问题是针对 AAA 风格的测试人员:你将如何像我在这里尝试做的那样进行某种异常验证测试?