【问题标题】:fluentassertion won't compilefluentassertion 不会编译
【发布时间】:2015-02-02 16:21:27
【问题描述】:

我显然缺少一些组装或参考来完成这项工作,它可能是fluent assertions 或者它可能是Microsoft.Team Foundation.Warehouse。我都不确定如何使用/添加作为引用(我确定如何安装流利的断言,它什么也没做!)。

我找到了the code below online,我想使用它,但它缺少一些组件,而不是说这里是一个屏幕截图 - 我已经安装了流利的断言库以尝试编译(我相信“Should()”是流利断言的组成部分)

似乎对[Fact]Should() 这两个关键字感到不安

悬停消息显示“System.Collections.Generic.List 不包含 'Should' 的定义,并且找不到接受 System.Collections.Generic.List 类型的第一个参数的扩展方法 'Should'(因为您缺少 using 指令或程序集引用?)"

【问题讨论】:

  • 我相信 FactAttribute 是 xUnit 的一部分...您使用的是哪个测试框架?
  • 我的问题中有一个链接gist.github.com/ReitenSchnell/5998938
  • 是的,它没有任何using 指令,所以我们无法判断它使用的是什么测试框架。但是您应该知道您正在使用的测试框架,因为您应该有对它的引用。
  • 谢谢:它是 xunit,我不使用测试框架(从来没有)我可能已经将它注释掉了,但我只是想测试这段代码 atm 不是一路走好-无论如何,我对丹尼斯的回答的评论就是这样做的方法,感谢您的帮助,没有您,我无法弄清楚。

标签: c# compilation fluent-assertions fact


【解决方案1】:

只需在顶部添加using FluentAssertions; 语句。如果您不确定正确的引用,请删除 FluentAssertions.*dll 的所有物理实例并添加相应的 Nuget 包。

【讨论】:

  • 谢谢丹尼斯,答案是PM> Install-Package xunit -Version 1.9.2,然后是PM> Install-Package FluentAssertions,然后是using FluentAssertions;(在折射器中没有提示)折射器会提示对于using Xunit; tho.. 注意:它不是我在 OP 中假设的“仓库”)它是 Xunit。
  • 顺便说一句,我怎么能重写priorityCollection.TestList.Should().ContainInOrder 没有 FluentAssertions?我真的不明白那条线在做什么? :-s
  • 它正如它所说的那样:断言TestList 中的所有项目的出现顺序与它们在提供给ContainInOrder 的集合中存在的顺序相同。
猜你喜欢
  • 2020-03-25
  • 2021-10-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-04
  • 2013-08-02
  • 2018-10-23
  • 2015-09-22
相关资源
最近更新 更多