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

autofac - 使用 autofac 进行 XUnit 测试

我按照此链接https://github.com/dennisroche/xunit.ioc.autofac使用 autofac 创建 XUnit 测试,但出现错误

请求的服务“Xunit.Sdk.TestOutputHelper”尚未注册。要避免此异常,请注册一个组件以提供服务,使用 IsRegistered() 检查服务注册,或使用 ResolveOptional() 方法解决可选依赖项。我添加了以下代码:

我错过了上面链接中的任何内容吗?

0 投票
2 回答
10516 浏览

asp.net-core - 使用 Autofac 进行 XUnit 测试构造函数依赖注入

我正在使用 Autofac 实现 Xunit,我可以通过以下代码使其工作:

但我想注入 UserReponsitory 来测试方法而不是使用DbFixture.Container.Resolve. 是否可以使下面的代码工作?
单元测试1.cs

DbFixture.cs

目前,我得到以下错误,它似乎与IClassFixture<DbFixture>并且public UnitTest1(IUserReponsitory userReponsitory)不同。

消息:以下构造函数参数没有匹配的夹具数据:IUserReponsitory userReponsitory

DbFixture.Container.Resolve有没有什么方法可以在不调用类似于注入 MVC 控制器的情况下实现以下代码?

换句话说,我怎么能依赖注入单元测试类?
任何帮助,将不胜感激。

0 投票
3 回答
1350 浏览

c# - 单元测试保存更改失败

构架

Controller Post 方法
_yourRepository被注入到控制器构造函数中,并且是类型IYourRepository

失败的单元测试

测试失败,因为该行

总是评估为真。当它评估为 true 时,您可以看到代码抛出错误(由中间件处理)

_yourRepository.Save() 方法

我不知道如何解决这个问题,我也不是 100% 确定它为什么会失败。

是不是因为模拟IYourRepository接口不包含Save方法的实现吗?

如果是这样,这是否意味着测试Post我需要模拟我的 DbContext 并YourRepository使用它构造我的对象的方法?

任何关于为什么失败以及如何纠正它的解释将不胜感激

0 投票
2 回答
14598 浏览

c# - 集成测试 ASP.NET Core Web API 和 EF Core 时重新配置依赖项

我正在关注本教程
使用 Entity Framework Core 和 SQL Server 进行集成测试

我的代码看起来像这样

集成测试类

据我了解,该.UseStartUp方法确保TestServer使用我的启动类

我遇到的问题是,当我的 Act 语句被击中时

我的启动类中出现连接字符串为空的错误。我认为我对这个问题的理解是,当我的控制器从客户端被击中时,它会注入我的数据存储库,而后者又会注入数据库上下文。

我想我需要将服务配置为该部分的一部分,new WebHostBuilder以便它使用在测试中创建的上下文。但我不知道该怎么做。

Startup.cs 中的 ConfigureServices 方法

0 投票
3 回答
1620 浏览

c# - 使用 AutoMapper 进行集成测试无法初始化配置

框架和包

集成测试

启动.cs

问题
调用控制器方法后集成测试失败:

它失败是因为 AutoMapper 尚未初始化。我理解这一点的方式是,既然TestServerUseStartup方法,它应该使用apiStartup.cs类中配置的所有服务(UseContentRoot指向我的api项目根)

这显然没有发生。有人可以告诉我如何配置,TestServer以便正确选择 AutoMapper 配置吗?

0 投票
1 回答
3613 浏览

entity-framework-core - DbContext.Database.EnsureCreated()

我正在研究packtpub的单元测试实体框架核心食谱,有一个例子(我做了一些改变)

第一次测试失败,第二次通过。我很确定数据库已经创建,这就是为什么第二个测试通过了,但是为什么第一个测试失败了?

0 投票
0 回答
56 浏览

c# - 使用 xunit2 时的 AutoMapper 映射异常

我完全不知道为什么会出现映射异常。我创建了一个单例来加载我的所有配置文件。我通过从程序集中获取类型然后使用 Activator.CreateInstance 实例化配置文件来加载我的配置文件。有时一些测试用例通过了,有时同样的测试用例失败了。据我所知,存在某种竞争条件,这导致了这个根本不应该发生的问题我是否遗漏了其他东西?我也收到了 TypeInitialization 异常。

0 投票
1 回答
100 浏览

.net - System.Configuration.ConfigurationErrorsException 使用 xunit2 和 automapper

我一直面临一个不寻常的问题,在我的单元测试项目中我遇到了这个错误,而且奇怪的是一些通常通过的测试,在下一次运行中失败。有了这个错误,我也得到了 AutoMapperMappingExceptions,尽管我正在尝试从程序集中加载所有配置文件。我也检查了我的 app.config 是否存在潜在错误。我正在运行 xunit2,automapper 3.2.1。我正在附加堆栈跟踪的一部分

0 投票
0 回答
367 浏览

c# - 使用 xUnit 2 为单元测试加载 AutoMapper 配置文件时的奇怪行为

xUnit2 并行运行所有测试,因此我想确保首先加载我的所有自动映射器配置文件,以便在运行测试时获得成功的映射。这就是我所做的

}

事情是这样工作的,但是当我在 GetConfiguration 方法调用下方设置布尔值时,一切都开始失败。配置文件未加载,AutoMapper 抛出 MappingExceptions。lock(Sync) 构造是否应该在另一个方法执行之前阻塞并等待一个执行周期完成。我无法解决这个问题。

0 投票
0 回答
129 浏览

c# - 在 xUnit 2 中运行时的测试行为

从我从 xUnit 的文档中读到的内容,我可以推断默认情况下任何类都是测试集合并且并行运行。所以我的问题是,是创建多个 appdomains 来并行运行这些测试,还是每个程序集一个 appdomains?有人可以对xunit如何做到这一点有所了解。