问题标签 [mbunit]
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.
c# - mbunit v2 与 v3 xml 报告文件
我们的测试源代码树当前包含包含 mbunit v2 测试或 v3 测试(最新项目)的 c# 项目。我们旧的 v2 测试项目是使用“autorunner”生成 XML 报告的 exe。由于新项目使用的是没有自动运行程序的 Gallio,我们使用 gallio.echo.exe 为给定的测试程序集生成适当的 xml 文件。
现在的问题是:我们前段时间开发了一个内部工具,它查看 xml 报告文件以确定是否满足某些客户要求。这是为 mbunit v2 编写的。echo 生成的 xml 文件似乎有所不同。
那么...有没有办法让 echo 生成看起来像 v2 报告的 xml 报告?我们需要避免重写我们的内部工具(目前)......无论如何我们可以得到 echo 来生成看起来像以前用于 v2 的 xml 文件吗?
unit-testing - Resharper 在仅选择一个时运行所有测试
我将 Resharper 4.5 与 Visual Studio 2008 和 MBUnit 测试一起使用,使用 ReSharpher 运行测试似乎有些奇怪。
在侧面,每个测试方法的类旁边都有图标,带有“运行”和“调试”选项。当我选择运行时,它只会向我显示单个测试的结果。但是我注意到测试需要很长时间才能运行。
当我运行 Sql Server 分析器并开始单步执行代码时,我意识到它不仅运行选定的测试,而且还运行类中的每一个测试。有什么理由让它看起来像只运行一个单元测试而实际运行它们?
当我只关心一个结果时,等待所有集成测试运行变得很痛苦,有没有办法改变这种情况?
unit-testing - 是否可以在 mstest 中进行工厂测试,例如在 MbUnit 中?
我们在我们公司使用 mstest 进行单元测试。主要原因是 MbUnit 没有免费的 Visual Studio 集成(TestDriven.NET 对公司来说不是免费的)。
最近,我偶然发现需要在同一接口的两个不同实现上运行相同的单元测试。根据我过去的经验,我知道使用 MbUnit 很容易。但是,如何使用 MSTest 来做到这一点?
我强调我需要为每个接口单独的结果,所以,请不要提供诸如从相同的单元测试方法运行相同的方法两次(每个接口一次)之类的东西,因为这样做只会产生一个结果。
我知道数据驱动的解决方案并现在使用它,但它在 a*s 中很痛苦。有没有更简单的方法,MbUnit 方法?
谢谢。
mbunit - MbUnit v3 中的 UsingFactories 替代方案
我想弄清楚如何在 MbUnit v3 中编写组合测试。网络上的所有示例代码都引用了 MbUnit v2,这意味着使用 3 个属性:
- 组合测试
- 工厂
- 使用工厂
在 MbUnit v3 中没有 UsingFactories 属性(并且 Factory 属性语义大不相同,不再需要 CombinatorialTest 属性)。那么如何才能知道哪个工厂方法绑定到特定单元测试方法中的哪个参数呢?
谢谢。
mstest - 如何在 MSTest 中模拟 MbUnit 的 [MultipleCulture] 属性?
MbUnit 有一个很棒的属性:MultipleCultureAttribute。
我想知道在 MSTest 中是否有一种简单的方法可以做到这一点?到目前为止,我能想到的最好的方法是:
- 将实际测试代码外部化为私有方法
- 保存当前文化
- 设置文化并调用私有方法(对每种文化重复)
- 最后,回归原始文化
充其量,它可以被描述为丑陋……而且冗长。
c# - 如何模拟一个方法?
我只需要模拟 Method1 来测试我的流程异常。我怎么能这样做?
mbunit - 如何在 mbUnit 中有条件地忽略测试?
我正在使用 TeamCity 进行测试和生产的自动化构建。TeamCity 在流程结束时使用 Gallio 运行我们的 mbUnit 3.1 测试。
在运行测试构建时,Gallio 应该尝试对测试数据库服务器执行测试。但是,在运行生产构建时,不应运行这些测试,因为 TeamCity 无法访问生产数据库服务器(即使生产数据库可用,许多测试也会因未发布的代码而失败)。
如何标记一个测试,以便它在 mbUnit 中基于一个布尔值(如 IsDBOnline)被忽略?
mbunit - NCover、Mbunit、命令行Profiler连接无法连接?
我正在尝试将 NCover 1.5.8 与 Mbunit 2.4.2.130 一起使用。我正在使用 bat 文件中的以下示例。我每次尝试运行它时,它都会告诉我无法连接到 NCOVER 进程?
SET NCOVERPATH=C:\Code\rsinetmvc\branches\web_app\trunk\build_tools\ncover\ REM 程序集输出和报告输出的目标路径。SET TARGETPATH=C:\Code\rsinetmvc\branches\web_app\trunk\product\RSINET.MVC.Tests\bin\debug\ SET MBUNITPATH=C:\Code\rsinetmvc\branches\web_app\trunk\thirdparty\mbunit\
echo %NCOVERPATH% echo %TARGETPATH% echo %MBUNITPATH% echo %REPORTFILEPATH% echo %MBUNITPATH%mbunit.cons.exe echo %TARGETPATH%RSINET.MVC.Tests.dll
"%NCOVERPATH%ncover.console.exe" //w %TARGETPATH% //a RSINET.MVC.Tests //h %REPORTFILEPATH% "%MBUNITPATH%mbunit.cons.exe" "%TARGETPATH%RSINET.MVC.Tests. dll"
.net - Visual Studio .NET - 使用 Gallio 集成的 MbUnit 测试 - 多个断言的问题
我正在使用 Gallio 将 mbunit 的测试运行器与 Visual Studio 中的 mstest 测试运行器集成。它工作得很好——除非我用多个断言语句运行测试。测试将根据 FIRST 断言语句通过或失败。我知道很多人反对多个断言,但在诸如接收多行输入的行测试和组合测试之类的情况下,它们是不可避免的。如果从 Gallio 的 icarus gui 执行,所有测试都将成功运行。有没有其他人遇到/解决过这个问题?
编辑:这是一个代码示例
(我显然在 c# 中得到了相同的结果)
通过 Visual Studio 运行时,测试通过,我得到:
MyRowTest(3,3) 持续时间:0.016 秒,
断言:2
c# - MbUnit:比较不同的对象实例
我想知道是否有一种方法可以比较 MBUnit 中的两个对象,以便在对象“看起来”相同时通过测试,即使这些对象是不同的实例?
例如:
Assert.AreEqual() 对此不起作用(测试失败,请参阅上面的源代码)。由于它指出“两个值在格式化时看起来相同,但它们是不同的实例”,我认为必须有某种方法可以在 MbUnit 中内置,而无需在我自己的代码中将对象序列化为 XML。
我是否必须为此编写自己的 Assert 扩展方法?