问题标签 [ncrunch]

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 投票
1 回答
1019 浏览

asp.net-mvc - Visual Studio MVC 5 web 项目 - 我应该在项目中包含“node_modules”文件夹吗?

我使用 NPM 在我的 MVC 5 Web 项目中维护前端依赖项。我对 NPM 的主要用途之一是为事物获取 Typescript 定义。

该项目是这样组织的:

我想知道的是我是否应该将“node_modules”包含到项目中,以及是否应该将“node_modules”包含到源代码控制中。

我问的原因是,一切似乎都对它被排除在外(甚至是构建代理,它在编译之前执行“NPM 恢复”)感到满意。

但是,NCrunch 抱怨它找不到对我项目的 TypeScript 文件引用的各种类型的任何引用。

例如 Admin.ts 引用“/node_modules/@types/knockout/index.d.ts”

我认为将“node_modules”引入网络项目可以解决它,但我不确定它是否正确。

0 投票
2 回答
310 浏览

c# - 如何分离 NCrunch 节点服务使用的所有 LocalDb 数据库

有时,使用 LocalDB 的测试的清理代码不会运行(可能是在取消测试时)。结果是很多垃圾本地数据库。

运行尝试创建另一个 localDB 的测试时出现这样的错误

System.Data.SqlClient.SqlException: Unable to create/attach any new database because the number of existing databases has reached the maximum number allowed: 32765. ved System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) ved System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) ved System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) ved System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) ved System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async, Int32 timeout, Boolean asyncWrite) ved System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry) ved System.Data.SqlClient.SqlCommand.ExecuteNonQuery() ved Dapper.SqlMapper.ExecuteCommand(IDbConnection cnn, CommandDefinition& command, Action`2 paramReader) ved Dapper.SqlMapper.ExecuteImpl(IDbConnection cnn, CommandDefinition& command) ved Dapper.SqlMapper.Execute(IDbConnection cnn, String sql, Object param, IDbTransaction transaction, Nullable`1 commandTimeout, Nullable`1 commandType)

每个测试类中的测试清理都是这样的(使用 xunit)

0 投票
0 回答
73 浏览

msbuild - 如何使 .nuproj 项目与 NCrunch 一起工作

我有一个包含两个 nuproj 项目的解决方案,比如 A 和 B。这两个项目只包含道具和目标文件(因此没有程序集或 PDB 文件),并且它们都生成 NuGet 包。

现在,A 没有引用,它是一个内部依赖项,而 B 引用 A 加上其他外部 NuGet。然后我有一个 MSTest 项目,它在引用 B 的项目上动态调用 MSBuild。

在 Visual Studio 中一切正常,测试通过。但是,NCrunch 编译时对项目 B 发出警告。

警告 - ........\program files (x86)\microsoft visual studio\2017\professional\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets (2110, 5): MSB3246: Resolved file has a错误的图像,没有元数据,或者无法访问。无法加载文件或程序集“A.nupckg”或其依赖项之一。试图加载格式不正确的程序。

事实上, NCrunch 解决方案目录中的 A 项目没有生成 NuGet 包(在 Visual Studio 中正确生成了包)。

我还尝试为 A 和 B 项目设置以下属性:

  • 仪器组装 = 假
  • 防止签署输出程序集 = false
  • 隐式项目依赖 = true

没有任何变化,警告仍然存在,并且没有为 A 项目生成 NuGet(所有源文件和依赖程序集都在 NCrunch 解决方案文件夹中)。并且将引用的程序集复制到工作区设置为 true。

将 NCrunch 与 .nuproj 一起使用是否存在任何已知问题?

0 投票
0 回答
23 浏览

ncrunch - 更新到最新版本 3.20 后出现 NCrunch 错误

自从我今天早上将 NCrunch 更新到最新版本以来,NCrunch(这很棒)已经开始抛出错误。

所以在升级之前一切都运行良好(它促使我这样做)。

自从更新并重新启动机器以来,我现在收到以下和类似的消息:-

System.IO.FileNotFoundException:无法加载文件或程序集 'file:///C:\Users\xxxx\AppData\Local\NCrunch\24252\11_ncrunchreferences\System.Net.Http.dll' 或其依赖项之一。该系统找不到指定的文件。在 UnitTests.xxx.nnn.com.Controllers.Application.GetTests.WhenTheManagerCallFails()

但是,我的 NUnit 测试仍然通过,所以它只是影响 NCrunch?我在论坛上看过的任何想法,在 SO 上并没有找到任何线索......有人有什么建议吗?

0 投票
1 回答
167 浏览

unit-testing - 测试运行器与 HttpClient 和 Mocking HttpMessageRequest XUnit 不一致

因此,让我首先说我已经看到了创建包装器与模拟 HttpMethodRequest 之间的战争的所有线程。过去,我已经非常成功地完成了包装方法,但我认为我会走上 Mocking HttpMessageRequest 的道路。

对于初学者来说,这里有一个争论的例子:在单元测试中模拟 HttpClient。我想补充一点,这不是这个问题。

我发现我对注入 HttpClient 的测试进行了测试。我一直在做很多无服务器的 aws lambda,基本流程是这样的:

所以这就是我遇到问题的地方!

当我所有的测试都运行时,NCrunch它们通过了,并且通过得很快!

当我使用 手动运行它们时Resharper 2018,它们会失败。

同样,当它们在 CI/CD 平台中运行时,该平台是一个在 Linux 发行版上带有 net core 2.1 SDK 的 docker 容器,它们也会失败。

这些测试不应并行运行(以这种方式读取测试默认值)。我围绕这些方法进行了大约 30 次测试,每个测试在起订量验证部分随机失败。有时他们通过,有时他们失败。如果我分解每个测试类的测试并以这种方式运行组,而不是全部合二为一,那么这些将全部通过块。我还要补充一点,我什至尝试隔离每个测试方法的变量,以确保没有重叠。

所以,我真的很想通过这里处理这个问题并确保这是可测试的。

是否有不同的方法来接近HttpClient它可以持续通过的地方?

0 投票
3 回答
2102 浏览

ui-automation - 如何在远程机器上使用 FlaUI 运行 UI 测试而不是 RDP 进入它?

我们有一些 UI 测试使用FlaUI来自动与 windows UI 交互。

当我们在构建服务器上运行这些测试时,它们无法与 UI 交互,除非有人通过 RDP 连接。

我们从测试中得到的错误只是Could not send mouse input. ErrorCode: 5

机器设置为在启动时登录用户,如果我们以该用户身份登录 RDP 会话并“观看”测试,那么它们运行正常并可以与桌面交互。一旦我们断开该用户的连接,他们就无法再次进行交互。

我们正在通过 NCrunch 网格节点运行测试,使用 NCrunch 网格节点控制台应用程序,该应用程序在登录时启动(即它不作为服务运行,因此它可以与桌面交互)。

有什么方法可以让测试以一种我们不必连续观察的方式运行吗?

0 投票
1 回答
76 浏览

mstest - NCrunch 中的父夹具失败 - 无法转换 TestContext_proxy

在 MS Test 测试中运行时,我在 NCrunch 中收到此错误:

System.ArgumentException:“Microsoft.VisualStudio.TestTools.UnitTesting.TestContext_proxy”类型的对象无法转换为“Microsoft.VisualStudio.TestTools.UnitTesting.TestContext”类型。

该解决方案包含许多 MS Test 1 和 MS Test 2 项目的混合体。这些项目的所有其余测试都在 NCrunch 中正常运行。

所有 MS Test 1 项目都引用了相同的 MS Test DLL,位于C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll

检查源代码管理似乎没有改变现在失败的项目,可能是什么原因造成的?

0 投票
1 回答
117 浏览

c# - 如何从 .Net Core 项目/解决方案中删除 .ncrunchproject 文件(或任何其他类似文件)

我已添加NCrunch到我的 .Net Core 解决方案中,现在此文件已添加到所有项目中:

我已将此添加到 gitignore,因此它不会进行源代码控制,但是如何将其从 Project 中删除?

通过单击“在菜单中排除”或在 .csproj 文件中手动添加它,可以选择在每个项目中明确排除此文件。我希望存在更好的解决方案。

0 投票
1 回答
96 浏览

c# - NCrunch 构建失败,从 fody >= 4.0.0 开始“无法将透明代理转换为 IInnerWeaver”

使用 NCrunch 构建项目时出现以下错误。

我花了一段时间才确定如何重现错误:

创建一个新的 c# 库 (net472) 并安装依赖于Fody (>= 3.3.5)的 nuget 包NullGuard.Fody (1.8.7 ) 。不要使用 packages.conf,而是使用新的 PackageReference 格式。添加 FodyWeavers.xml。

使用以下设置激活 NCrunch(Visual Studio 2019 中的 3.26.0.4):

  • 允许并行执行
  • 自动运行所有测试
  • 默认情况下不要忽略测试

Visual Studio 和 NCrunch 都可以成功构建项目。

安装Fody (4.0.0),现在,NCrunch 无法再构建,但 Visual Studio 仍然可以。

这是一个 fody/ncrunch 错误,还是我错过了什么?

0 投票
1 回答
79 浏览

c# - 使用 NCrunch、FxCop 分析器和“错误警告”:如何在 NCrunch 中配置警告严重性?

我正在编写 C# 代码。我使用 NCrunch 在后台运行我的单元测试。我已经设置了我的 CSPROJ 文件(新的 CSPROJ 格式)。

我想将 FxCop 分析器用作 NuGet 包:https ://docs.microsoft.com/en-gb/visualstudio/code-quality/install-fxcop-analyzers?view=vs-2019

当我第一次安装 FxCop 分析器时,我的代码无法构建,因为有许多警告,而我有 . 通过将其添加到我的 .editorconfig 中,我将一堆警告降级为“建议”级别:

现在我可以在 Visual Studio 中构建。但我的问题是 NCrunch 显然没有读取 .editorconfig 文件。因此 NCrunch 无法构建解决方案,因为它看到了警告。

如何为 NCrunch 配置警告严重性级别?

我有 NCrunch 3.26.0.4。