Questions tagged «xunit»

xUnit是遵循特定体系结构的单元测试兼容框架的集合名称。实现因语言而异,但框架应包括测试运行器,测试用例,测试装置(上下文),测试套件,测试执行,测试结果格式化程序和断言

8
Hudson支持什么JUnit XML格式规范?
我将Hudson作为持续集成服务器,并且我想使用选项“发布JUnit测试结果报告”。但是我不使用xUnit工具进行测试,相反,我有运行测试并以简单格式返回结果的shell脚本。我正在考虑制作一个脚本,将这些结果转换为JUnit格式。所以我很有趣JUnit文件的外观如何?
183 jenkins  junit  hudson  xunit 

30
Visual Studio 2015或2017无法发现单元测试
编辑2016-10-19: 最初的问题是关于使用XUnit测试运行程序的VS2015 CTP6特有的问题。从答案中可以很明显地看出,Visual Studio中的单元测试发现存在着更为广泛的问题,这可能发生在许多不同的情况下。我整理了我的问题以反映这一点。 我还在自己的答案中包含了一个脚本,直到今天,当类似问题出现时,我仍会使用该脚本来解决它们。 事实证明,许多其他答案也有助于更好地理解VS测试运行程序的复杂性。我感谢人们仍在分享他们的解决方案! 原始问题2015-04-10: 从昨天开始,我的Visual Studio Test Explorer将不会发现我的任何项目的测试。构建后,它也不显示绿色的加载栏。 当我转到Visual Studio测试资源管理器并单击“全部运行”时,或者当我右键单击任何测试方法并选择“运行测试”时,我将在输出窗口中获得以下内容: Could not load file or assembly 'Microsoft.VisualStudio.Web.ProjectSystem, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified. 我在Windows 10运行Visual Studio 2015年CTP 6 Pro的技术预览版,构建10041. .NET Framework版本似乎并不重要-它发生的4.0,4.5.2和4.6。 我尝试使用以下测试框架,并且所有框架都具有相同的行为: Microsoft.VisualStudio.QualityTools.UnitTestFramework v14.0.22609.0 xunit v2.1.0-beta1-build2945 与 xunit.runner.visualstudio …


4
在xUnit中验证集合大小的惯用方式是什么?
我的测试套件中有一个测试是这样的: [Fact] public void VerifySomeStuff() { var stuffCollection = GetSomeStuff(); Assert.Equal(1, stuffCollection.Count()); } 该测试按我的预期工作,但是当我运行它时,xUnit会显示警告: 警告xUnit2013:请勿使用Assert.Equal()检查集合大小。 但是,警告中没有其他建议,谷歌搜索将我带到xUnit中的源代码以进行验证此警告的测试打印。 如果Assert.Equal()不是验证集合长度的正确方法,那是什么? 需要澄清的是:我意识到我可以“诱骗” xUnit,使其不发出警告,例如提取变量或使用它Assert.True(stuff.Count() == 1)。后者只是骇人听闻的,而前者的感觉就像是如果xUnit例如试图避免的多次迭代IEnumerable<T>,那么这是错误的方法(因为如果遇到问题,我将分别获得编译器的提示)和xUnit本身永远不必对输入进行多次评估(实际上,由于C#函数调用的工作原理,无论变量提取如何,它都将获得相同的输入)。 因此,我不仅对从输出中删除该警告感兴趣。我的问题的答案还解释了为什么该警告首先包含在库中,以及为什么我应该改用任何方法更好。
112 c#  xunit  xunit.net 

3
使用XUnit声明异常
我是XUnit和Moq的新手。我有一个以字符串为参数的方法,如何使用XUnit处理异常。 [Fact] public void ProfileRepository_GetSettingsForUserIDWithInvalidArguments_ThrowsArgumentException() { //arrange ProfileRepository profiles = new ProfileRepository(); //act var result = profiles.GetSettingsForUserID(""); //assert //The below statement is not working as expected. Assert.Throws<ArgumentException>(() => profiles.GetSettingsForUserID("")); } 被测方法 public IEnumerable<Setting> GetSettingsForUserID(string userid) { if (string.IsNullOrWhiteSpace(userid)) throw new ArgumentException("User Id Cannot be null"); var s = profiles.Where(e => …
111 c#  unit-testing  xunit 

4
NUnit与xUnit
是:堆栈溢出:是:nUnit vs xUnit? 之间有什么区别的NUnit和xUnit.net?开发其中两个而不是一个的意义何在? 我读过xUnit是由NUnit的发明者开发的: xUnit.net是.NET Framework的单元测试工具。由NUnit 的原始发明人撰写 另一方面: NUnit是适用于所有.Net语言的单元测试框架..当前的生产版本2.6版是此基于xUnit的单元测试工具的第七个主要版本。 那么真相在哪里?
110 c#  .net  nunit  xunit 

4
xUnit:断言两个List <T>是否相等?
我是TDD和xUnit的新手,所以我想测试一下如下所示的方法: List&lt;T&gt; DeleteElements&lt;T&gt;(this List&lt;T&gt; a, List&lt;T&gt; b); 有什么我可以使用的断言方法吗?我觉得这样会很好 List&lt;int&gt; values = new List&lt;int&gt;() { 1, 2, 3 }; List&lt;int&gt; expected = new List&lt;int&gt;() { 1 }; List&lt;int&gt; actual = values.DeleteElements(new List&lt;int&gt;() { 2, 3 }); Assert.Exact(expected, actual); 有这样的东西吗?
108 c#  xunit 

8
将复杂的参数传递给[理论]
Xunit具有一个不错的功能:您可以创建一个带有Theory属性的测试,然后将数据放入InlineData属性中,而xUnit将生成许多测试并将其全部测试。 我想有这样的事情,但参数我的方法不是“简单的数据”(如string,int,double),但我的类的列表: public static void WriteReportsToMemoryStream( IEnumerable&lt;MyCustomClass&gt; listReport, MemoryStream ms, StreamWriter writer) { ... }

5
在Ruby的Kernel类中添加assert()方法是否是惯用的Ruby?
我通过在Ruby中编码等效于Kent Beck的xUnit来扩展我对Ruby的理解。Python(由Kent编写)以广泛使用的语言提供了assert()方法。Ruby没有。我认为添加它应该很容易,但是Kernel是否正确放置它? 顺便说一句,我知道Ruby中存在各种Unit框架-这是一种学习Ruby习惯用法的练习,而不是“完成某些工作”。
76 ruby  assert  xunit 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.