问题标签 [xunit]

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 投票
2 回答
795 浏览

c# - 在 Moles 下从 ReSharper 启动 xunit 测试

我的 xunit 测试运行良好;从 ReSharper 启动它们。现在我正在尝试将痣用于一些测试用例。我[Moles]在测试中获得了我的属性,参考了 moles xunit 扩展,但它抱怨“Moles 要求测试在仪器化过程中”。我认为这意味着我需要通过 moles.runner.exe 或其他东西运行它。有没有办法将其设置为使用 ReSharper 启动它?

0 投票
1 回答
378 浏览

c# - 在 TFS 中运行 Xunit 时出现 FileIOPermission SecurityException

我正在尝试将 Xunit 测试集成到我们的 TFS 构建中。

我已将 xunit.runner.msbuild.dll 和 xunit.runner.utility.dll 放在文件夹“C:\Program Files\MSBuild\Xunit”中。我在构建文件中有一个任务可以调用 Xunit 任务:

我收到一个错误,我不知道如何调试。我尝试让“每个人”用户完全控制 Xunit 文件夹。

0 投票
1 回答
1460 浏览

tdd - xUnit 框架和 BDD 可以一起工作吗?

我阅读的一些资源.. 将 BDD 称为对“Bad TDD”的回应。

  • 行为规范与验证。测试和实施之间没有不恰当的亲密关系
  • 在业务开发测试人员之间使用普遍/共享语言
  • 术语强调“行为”而不是“测试”。所以 Given-When-Then、Context、Scenario、Examples vs Test Suites、Fixtures 和 Cases。
  • 现场规格

不知道我是否错过了更多的好处..请投入。

鉴于大多数用户(可能是本地现象)在规范的创建/详细说明/澄清中“合作”,但对编辑/查看/执行/维护自动化版本不感兴趣(当然,他们希望通过以下方式满足所有规范软件):

xUnit(例如 NUnit)是否有任何方面阻止它成为 BDD 的好工具?

  • 根据规范编写是一种与工具无关的技能。
  • 无处不在的语言也是如此。只是需要努力才能把它弄出来
  • 注意上面提到的约束。假设我采用与 BDD Given-When-Then 风格一致的 xUnit 测试命名风格。
  • 我获得/创建了一个工具,该工具使用上述命名约定从测试结果文件中生成类似的“实时文档”。

有人可以在我定制的 BDD 地图上标记“这里有龙”吗...

0 投票
1 回答
1923 浏览

c# - 不同的模拟对象来比较单元测试中的对象

我有我正在尝试测试的 Equals 方法。如果传递给 is 的对象与此对象相同,则此方法返回 true。

我测试真实情况如下。

但是,我怎样才能获得不同的模拟对象来测试 equal 方法返回 false。

谢谢你,

0 投票
2 回答
2100 浏览

.net - xUnit runner 如何处理带有静态类构造函数的静态方法?

如果我有一个带有静态事实(测试方法)的类并且该类有一个静态构造函数,那么构造函数是为每个事实调用还是只为类中的所有事实调用一次?我想这取决于跑步者如何加载/卸载测试类?

0 投票
3 回答
920 浏览

.net - 使用 xunit 或 nunit 作为测试运行框架

我将从一个问题开始。我有一个小图书馆。它遍历文本文件中的 url 列表并根据 url 是否返回 200 创建断言。

目标是制作像 Reshaprer、Testdriven.net 这样的测试运行程序或像 team city 或 hudson 这样的 CI 服务器来获取断言作为测试。

我的问题是如何扩展/构建 xunit 或 nunit 以从其他来源运行测试?例子会很棒。

更新 使事情更清楚一点。我应该能够在 xunit/nunit 附带的测试运行器中加载 dll 并运行测试。

url 列表的填充方式非常动态。根据某些事情,可以创建更多 url。因此,数据列表不是一种选择。

0 投票
1 回答
602 浏览

command-line - 如何在命令行 GHUnit 中使用 UIApplicationDelegate?

从模拟器运行和从命令行运行之间的 GHUnit 结果存在差异。如何在 cli 中使用 UIApplicationDelegate?

在我的示例应用程序中 - 标签 stackoverflow-6479906。我想将苹果的OCUnit示例转移到GHUnit之一。

预计:

两个“appDelegate”都不为零。

当前的:

从模拟器运行工作正常。但是从 cli 运行会引发异常。https://gist.github.com/1046753

参考:苹果的单元测试示例

注意:我阅读了异步 NSURLConnection 示例,但在我的 UIApplicationDelegate 案例中没有找到解决方案和调整。

0 投票
1 回答
28140 浏览

nunit - xUnit框架:相当于XUnit中NUnit的[TestFixtureSetUp]?

xUnit 与 NUnit 的等价物是[TestFixtureSetUp]什么?

我们已经探索并发现它IUseFixture<T>相当于[TestFixtureSetUp],但它没有按预期工作。

正如我们所探索的(在 NUnit 的情况下),我们发现[TestFixtureSetUp]标记的代码方法在所有夹具中的测试运行之前只执行一次。在 xUnit 中,我们已经探索过[TestFixtureSetUp]is的等价物IUseFixture<T>,但是在测试过程中,我们发现在每次测试之前都会调用 的SetFixture方法IUseFixture(并非所有方法都调用一次)。

请让我们知道如何在 xUnit 中实现上述目标。如果我们对某些事情有误解,也请纠正我们。谢谢。

0 投票
3 回答
429 浏览

nunit - 什么单元测试框架可以满足我的要求?

这就是我在高层次上寻找的全部:

  1. 从 Visual Studio 2008 中运行单元测试的能力
  2. 与一些代码覆盖工具的兼容性
  3. 具有行测试功能的单元测试框架,例如 MBUnit 的RowTestAttribute
  4. 能够与Team City集成

我以为我在 xUnit.net 1.8、resharper 6.0 和 dotCover 1.1.1 中找到了这个。然而,在花了将近一天的时间来搞乱这些东西之后,我发现了这个设置的这些主要问题:

  • Resharper 不完全支持理论测试(行测试) -更多信息
  • dotCover 基本上不适用于 xUnit

我成功地使用 MSTest 和 ReSharper 来完成我需要的所有事情,但行测试除外,但使用一些更高级的测试框架,生活似乎会好得多。

我已经开始关注Gallio了,但我希望有人能帮我节省一些时间,并在我浪费更多时间探索之前推荐一个成功的组合。

你成功使用了什么组合?

0 投票
1 回答
246 浏览

silverlight - How to run F# Silverlight Library project holding xUnit.net Contrib based unit tests?

I am unaware of any project templates for F# Silverlight 4 unit tests (I searched Online for templates through Add Project), so I am using the standard F# Silverlight Library project to hold my unit tests (which are just file links to the main unit test project files). I am using xUnit.net Contrib for Silverlight. So everything compiles but I don't know how to run the tests! TestDriven.NET works for my normal unit test project but not this Silverlight unit test project. I tried to use the normal xUnit GUI runner but that doesn't work either. Any ideas?

Update

The xUnit.net Contrib folks recommended using Statlight as a standalone console runner. After adding System.Xml.Linq to my test project with Copy Local=true (my project doesn't need it but Statlight does) I was able to run the executable pointing at my test assembly without any errors except it was unable to find any tests.

I tried lots of things to try and allow the tests to be found. I gave explicit namespaces to my test modules. I tried test method names without spaces. I tried types with instance members instead of functions in modules. I even tried the explicit --MethodsToTest flag. Nothing works.

I'm not sure if this would be a problem with Statlight or xUnit.net Contrib.

Please note that I am merely trying to test a plain library which can be consumed by Silverlight projects and doesn't actually use any Silverlight features (indeed, I don't have any prior Silverlight experience!).

Update 2

I was able to add the normal xunit assembly to my project through NuGet (which "forces" it in despite not being built for Silverlight) and then run the tests successfully using Testdriven.NET. But I'm not sure if this is "cheating". Perhaps not because my tests are still compiled against the Silverlight version of my library...?

Update 3

While I still haven't had any luck with a "legit" xunit solution, I was able to get Statlight to run some NUnit tests. Except, it only recognizes tests on instance methods of a class, it doesn't recognize tests on functions of a module (while it can handle these just fine in a normal project). Bummer. (I filed an issue with Statlight)

Update 4

I've figured out a super hacky but workable solution to my problem, still looking for something better though. All of my tests are Xunit tests (file links to the non-Silverlight test project) written as functions in modules but I can't get Statlight to find any of the tests. However, I was able to get Statlight to run NUnit tests which are written in the traditional fashion as instance members of a type. Thus I was able to whip up the following single NUnit test which finds all the Xunit tests in the assembly and invokes them (so I can only see one failing test as a time, but other than that it does work well):