问题标签 [dunitx]
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.
unit-testing - 我可以将类型参数传递给 DUnitx 中的测试用例吗?
我正在为我的 FastCode 项目编写测试用例。
我写了一个这样的通用测试器:
一个典型的测试用例如下所示:
测试代码通常如下(对每种类型重复):
我想做的事:
并针对所述类型进行测试运行,这样我就不必编写太多样板文件。
这样的事情可以在 DUnitX 中完成吗?
unit-testing - 动态创建测试列表
我在 Delphi 中使用 DUnitX,但我被卡住了。如何动态创建测试列表?
例如,我有 sql 列表,需要像测试它们一样
对于一种方法,这很简单
执行
但是如果我需要测试列表,那么属性是不够的。 RepeatTest属性也不足,因为如果其中一项测试失败,则整个测试将停止,但我需要运行所有 sql
任何建议
编辑1
在 DUnit(没有 X)中,这可能是这样的
DUnitX 中的等价物是什么?
unit-testing - 我可以将一组传递给 DUnitX 中的测试用例吗?
我试图在运行测试后检查对象的状态。此状态包含在一个集合中。是否可以使用 DUnitX 属性将预期状态传递给测试用例,以便我可以对所有不同的输入使用相同的测试?
我试图将集合作为常量或集合传递,但在我的测试例程中,它总是作为空集到达。
- 这完全可以使用属性吗?
- 如果集合相同,您将如何测试?
示例代码:
我还尝试将预期结果定义为数组,但 DUnitX 甚至不再调用测试。可能这只是“太多”
到目前为止,我能想到的最好的方法是使用以下方法。抽取最多三个(在此处插入您最喜欢的整数......)预期状态的样本并分别检查这些状态。这不是我真正希望的,但它确实起到了作用。
非常感谢您的帮助。:)
unit-testing - Delphi 单元测试:为 CUT 编写一个简单的 spy
我正在寻找一种方法来轻松简洁地为 Delphi 下的DUnitX 测试框架编写一个间谍。
在过去,我使用了非常丑陋的方法来使用:
所有这些代码都用于检查是否调用了过程。太啰嗦了!
有没有办法编写一个可以帮助我减少代码的间谍?
unit-testing - DUnitX 从字符串到整数数组的转换
我的问题与此类似,但我想传递一个整数数组,而不是一个集合。
每个例子:
修改 DUnitX.Utils 似乎是最干净的方法,但我不确定如何进行转换。我的主要问题是,它怎么知道我需要一个整数数组?PTypeInfo 中有什么我可以利用的东西吗?
unit-testing - 我可以为 dunitx 命名空间中的所有设备创建一个通用设置例程吗?
是否可以在 dunitx 中使用命名空间,使命名空间下的所有测试装置都包含在一对设置/拆卸例程中?(类似于 nunit 中的 SetupFixture 属性,http: //www.nunit.org/index.php?p=setupFixture&r=2.5.5 )。
我尝试使用以下单位名称/命名空间:
TMyFixtureInitializer 类的 Tests.MyFixture.pas 以及常用的 setup 和 teardown 方法
Tests.MyFixture.MyTestUnit1.pas 和 Tests.MyFixture.MyTestUnit2.pas 用于实际的测试类。
我遇到了以下问题:
当类本身不包含任何测试例程时,不会执行 TMyFixtureInitializer.SetupFixture 和 TeardownFixture。
在 TMyFixtureInitializer 中添加虚拟测试后,将调用 SetupFixture 和 TeardownFixture 例程,但在Tests.MyFixture.MyTestUnit1 和 Tests.MyFixture.MyTestUnit2 中的测试之后。
当我在构造函数上设置 SetupFixture 属性,在 TMyFixtureInitializer 的析构函数上设置 TeardownFixture 属性时,它们在所有测试之前和之后执行,完全忽略了命名空间。
测试.MyFixture.pas:
Tests.MyFixture.MyTestUnit1.pas:
(Tests.MyFixture.MyTestUnit2.pas 的来源是类似的)。
有没有人有一个如何使用命名空间来组织初始化和清理的例子?
c++builder - 在 Rad Studio 的 DUnitX 中未调用 SetUp
我已经用 C++ 为 Rad Studio Berlin 构建了 DUnitX 示例。该代码是以下内容的副本:http ://docwiki.embarcadero.com/RADStudio/Seattle/en/DUnitX_Overview
标题是:
调用 TestAdd 和 TestSub 是因为它们在 __published 下,但从不调用 SetUp 和 TearDown。我知道每次测试都应该打电话给他们。看到 Delphi 代码,我可以看到 [Setup] 属性,但似乎对于 C++ 是没有必要的。我错过了什么吗?
delphi - 如何登录 DUnitX?
使用 Rad Studio 10 Seattle、DUnitX 和 TestInsight,我需要在控制台或任何日志屏幕中显示一些文本。怎么做到呢?我一直无法在网上找到它。
delphi - Delphi DUnitX 两次测试表单的创建
我用 DUnitX 创建了一个 TestCase,它自动生成了一些代码,我对如何构建测试用例感到困惑。
(自动生成的)代码如下所示:
但是,TBtnMgmtForm.Create
会自动调用.FormCreate
。以某种方式将这两者分开是一种好习惯吗?和有什么区别或应该有什么区别?.Create
.FormCreate