问题标签 [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 回答
8623 浏览

c# - 使用基于约束的断言提高断言 IsNotNullOrEmpty 的可读性

我目前正在重写一些单元测试以使用 NUnit 3 而不是 NUnit 2,并且需要将一些断言更改为基于约束的断言。我有以下断言:

我已更改为:

但是,我对断言时的可读性并不完全满意IsNotNullOrEmpty

我目前的建议是创建以下静态类:

用法:

这以引入自定义约束为代价提供了更好的可读性。有没有做出相同断言的标准方法,还是应该继续使用Is.Not.Null.And.Not.Empty

0 投票
1 回答
57 浏览

c# - 使用 NUnit 时如何处理合同违规

在 VS 社区版中使用 NUnit3 测试适配器运行以下测试(使用 nunit-3.2)时:

它只是冻结。通常,如果它发生在正常的应用程序运行期间 - 会有一个弹出窗口,其中包含是否失败或忽略违规的选项。

但是,如果它发生在测试代码中——如何处理这种情况并导致测试失败(因为如果它是一个未处理的异常,它会失败)?

0 投票
1 回答
173 浏览

nunit - 如何更改 TeamCity 上 NUnit 构建步骤中的默认选项

当我使用 NUnit runner 类型时,TeamCity 使用“–noresult”参数调用 nunit3-console.exe(与文档https://confluence.jetbrains.com/display/TCD9/Getting+Started+with+NUnit#GettingStartedwithNUnit-Case4 中的相同。 NUnitBuildStep,选项)。

如何删除默认选项“–noresult”以将测试结果保存在 XML 文件中?

0 投票
1 回答
257 浏览

unit-testing - NUnit 组织模式

在分析在 NUnit 中组织单元测试的不同选项时,我主要将其理解为三种类型。1.Test per Fixture 2.Class 3.Feature

任何人都可以分享一些很好的参考资料来提供对此的见解吗? 参考我很困惑,这里引用的站点解释了 NUnit 或任何其他测试框架?

在三者中选择模式时要考虑哪些约束?

0 投票
4 回答
1214 浏览

c# - 如何在 3.2 中以编程方式重新运行 nunit 测试?

在 nunit 2.6.4 中,我使用以下 C# 代码重新运行失败的测试:

但是升级到 nunit 3.2 后,TestExecutionContext.CurrentContext.CurrentTest 返回 null。如何在 3.2 中重新运行测试?

0 投票
1 回答
370 浏览

nunit-3.0 - 无法在 Build Agent 上运行 NUnit 测试

我已经阅读了这个论坛上关于这个主题的所有帖子,但仍然没有弄清楚这一点。我得到的错误是:

编辑:在日志中我看到“运行 VS 测试运行器”。这应该是不同的测试运行者吗?“未找到测试。确保已安装的测试发现器和执行器、平台和框架版本设置正确,然后重试。”

我的环境是 TFS 2013 上的 NUnit3 版本 3.2.1,使用面向 .NET4 的 VS 2013。在本地机器上构建时,我的测试运行良好。我在 Build Agent 机器上安装了 NUnit3 测试适配器,并且有一个 runsettings 文件。排队的构建工作没有错误,但测试没有运行。我很确定我在构建定义中的“测试源规范”是正确的,因为如果我在该字段中输入了不正确的内容,我会得到一个不同的错误。我在哪里可以找到日志......或者我如何启用详细日志记录来解释这个错误。现在我不知道在哪里看。任何帮助表示赞赏。谢谢

0 投票
1 回答
86 浏览

nunit-3.0 - 在构建代理上运行 NUnit 测试时出错

我的环境是使用 NUnit 3.2.1 的 TFS 2013 和 VS 2013。我收到错误消息:“异常 NUnit.Core.UnsupportedFrameworkException,执行测试时抛出异常”。

我认为这是因为我有 NUnitTestAdapter 2.0.0 并且需要 3.2.1。我在哪里可以找到这个?它不在https://dist.nuget.org/index.html

谢谢

0 投票
1 回答
596 浏览

nhibernate - 使用 resharper 运行单元测试时,Assembly.LoadFrom 不会从 bin\debug 加载 dll

我正在使用带有 Resharper Ultimate 2016.1 的 VS 2015 Update 2,我遇到了这个奇怪的问题。

我有一个名为 Test 的测试项目,它引用了两个项目,Model 和 Persistence。模型项目包含 nhibernate 实体类,Persistence 项目包含 *.hbm.xml 文件。它们是用 llblgenpro 4.2 生成的。我正在使用休眠 4.0.4。

我用这个调用初始化 NHibernate:

当我运行我的一个测试用例时,休眠初始化失败并出现以下异常:

如果我将 persistence.dll 复制到 C:\Users\costa\AppData\Local\JetBrains\Installations\ReSharperPlatformVs14 文件夹,则测试用例可以正常工作。persistence.dll 位于 C:/projects/csharp/Test/bin/Debug 文件夹中,因为在测试项目中引用了持久性项目。

这一切在 VS 2013 中使用 nhibernate 3.3.1 运行良好。此外,我使用测试项目 app.config 文件中的 assemblybinding 元素使所有 dll 版本对齐。

我的项目针对 .Net 4.6,我使用 nunit 3.2.1。

我找到了这个:

Resharper 从不同的位置运行 UnitTest

但是,在我的情况下,“正在测试的影子复制程序集”已关闭,对每个带有测试的程序集使用单独的 AppDomain 也已关闭。运行测试从设置为项目输出文件夹。

有什么想法可能导致这种情况吗?

谢谢

更新:如果我这样做,它会起作用:

更新 2. 我的项目使用Sharp Architecture 库。NHibernateSession 是属于这个库的一个类。

0 投票
0 回答
554 浏览

nunit - nunit3-console 不在我的 testlist 文件中运行任何测试,也不会产生任何错误

我有基础夹具和其他从基础继承的夹具

  1. Base Fixture 以 webdriver 作为参数在不同的浏览器上运行测试
  2. 测试都在 TestA 和 TestB 类中我创建了一个 testlist 文件,其中包含完整的 testname namespace.classname.testmethod 每行一个,

nunit3-console 产生以下输出:

不运行任何测试。

不确定我是否需要在测试名称中指定参数,如果是,语法是什么?

这是我的代码示例,我使用的是 c# 和 nunit3:

TestList 文件的测试名称如下:

0 投票
1 回答
556 浏览

c# - 单元测试 LINQ 返回一个整数

我有这个测试来验证我是否在我的参考中调用了 Query()。

但是,GetLicenseCount(Guid.NewGuid(), Guid.NewGuid()) 函数如下所示:

Query() 在 repo 中返回 all 以计算哪些 UserId 为 null。 即使它只验证 linq 的 query() 部分,是否可以说测试是可以的?计数呢?