问题标签 [xunit2]

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 回答
909 浏览

c# - AutoFixture,xUnit:设置 TypeRelays 并在构造函数中注入服务

我正在尝试编写一些测试,我使用 xUnit.net、Moq、AutoFixture。我需要为我的测试方法注入服务:

IService我想模拟 3 个依赖项。但是,如果我运行测试,我会收到错误:

因此,我通过以下方式对其进行了修复:

但是,如何设置TypeRelay所有测试并通过方法构造函数注入服务?

0 投票
0 回答
57 浏览

.net - 如何从 Automapper 配置文件中删除 AfterMap

我有一个配置文件类,我在其中使用 AfterMap() 方法。我的配置文件类有两个构造函数依赖项。问题是,当我进行单元测试时,我在模拟这些依赖项,但在进行集成测试时我还需要实际的对象。由于我使用的是 xUnit2,所以一切都是并行运行的,所以我无法控制。这就是为什么我想从 aftermap 中删除所有代码的原因。有人可以告诉我这个方法吗?我使用结构图作为我的 IOC 容器。

0 投票
1 回答
573 浏览

xunit - xUnit - 可以在 xUnit 中运行的最大并行测试数是多少?

xUnit 文档没有对并行测试的数量进行任何限制 - https://xunit.github.io/docs/running-tests-in-parallel.html

0 投票
1 回答
15114 浏览

.net - “dotnet test”:如何并行运行 xunit 测试项目?

我正在使用单个命令从解决方案级别运行所有测试项目: dotnet test如何使所有测试项目(程序集)并行运行?

在 Visual Studio 中,有一个简单的按钮“并行运行测试”,效果很好,但我需要对 CI 使用 dotnet core test 命令。

0 投票
0 回答
1079 浏览

.net - Xunit 未在 Visual Studio 2019 中运行某些测试

Xunit2 未在 Visual Studio 2019 中正确运行某些测试。

我最近从 NUnit 迁移到 Xunit2(在我的项目中删除了对它的所有引用)。我按照官方页面上的说明安装了 Xunit2,以及 nuget 测试适配器(我没有安装他们建议不要使用的 Visual Studio 测试扩展)。

我构建了我的项目,并按预期发现了测试。但是只有一部分通过或失败,其余显示蓝色感叹号(同一类中的事件会起作用,而其余的则不会运行)。

查看输出后,我看到以下测试未正确运行:

因此,Visual Studio 发现了所有这些,但 Xunit 找不到其中的一些。

所有项目都是 .NET Framework 4.7.2/AnyCPU

0 投票
1 回答
31 浏览

tdd - 如何在控制器中为以下方法编写测试用例

需要代码为 ControllerApi 编写 xunit 测试用例

我试图从 xunit 测试方法注入构造函数,但它询问我在测试方法中没有的构造函数值。

控制器 ItemApiController.cs

现在如何为 ItemApiController 中的 ItemClass 方法编写 Xunit 测试方法。

0 投票
1 回答
228 浏览

c# - 使用 Autofac.Extras.Moq 进行 XUnit 测试

我是单元测试的新手,下面是使用 xunit 进行单元测试的代码

我有一个测试:

但是当我运行测试时,它给了我错误:-

请给我解决方案如何测试上述功能以通过测试用例

0 投票
1 回答
6308 浏览

c# - XUnit Class Fixture (IClassFixture) is being executed twice

TextFixture and Test

AuthTest

HomeTest

ProfileTest

A few days ago I wrote this code and it used to create 1 browser instance. I started the project today again and now suddenly the fixture gets executed twice and it opens two seperate browsers (which causes my tests to fail). I thought the IClassFixture was supposed to only execute once like [OneTimeSetUp] attribute in NUnit. Why is my fixture executing twice?

This happens when I run all tests (all tests runsProfileTest and HomeTest). If I run for example one of the two tests individually, then just 1 browser instance opens and the test passes.

I'm using XUnit 2.4.0.

- EDIT -

When I use:

VS 2019 (run all tests): It opens 2 browsers at same time and fails.

VS 2019 (debug all tests): It opens 2 browsers at same time and fails.

Jetbrain's Rider IDE (run all tests): It opens 2 browsers at same time and fails.

Jetbrain's Rider IDE (debug all tests): It opens 1 browser till HomeTest finishes and then another browser for ProfileTest, and both tests pass (including LoginTest).

This last is how it is supposed to work and it used to be like this when I used NUnit before.

0 投票
2 回答
117 浏览

c# - C#每个属性都应该执行TestMethod

我创建了一个自定义 xUnit 理论测试 DataAttribute,名为RoleAttribute

我有测试方法OpenProfilePageTest

我想要的是它首先执行的每个角色(属性):

AuthRepository.Login(role);(的构造函数RoleAttribute

然后继续使用OpenProfilePageTest()方法内部的代码。在它重复相同但针对第二个属性之前。

我怎样才能做到这一点,现在我正试图通过OpenProfilePageTest()在属性内部传递方法并在其构造函数中执行它来实现这一点。必须有比传递我相信的方法更好的方法来实现这一点?

0 投票
1 回答
146 浏览

c# - 无效的强制转换异常 Xunit 反序列化错误

尝试通过 Visual Studio 运行使用 xunit 框架的测试用例时,我目前收到以下错误。

我是团队中唯一在运行测试时看到此错误的人,我已经强制深度刷新我的代码存储库并重新安装了许多东西,但这个问题仍然存在。

我们最近将 xunit 框架从 2.3.1 升级到了 2.4.1。我已经尝试将组件降级回 2.3.1,这使我可以再次运行测试,但是为什么这个问题只影响我仍然是一个谜。