问题标签 [fscheck]
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# - FsCheck 显示异常 C#
我正在玩 FsCheck。它失败了
为什么?两个操作ArrayHelpers.SumOfElements(original)
和 original.Sum() 返回相同的结果但 iy 失败。
f# - 如何使用 FsCheck 生成器生成两条相同类型的记录,其中一条记录的属性与另一条不同
我有这个 fscheck nunit 测试,它生成两条记录,然后我必须更新这些记录,以便两条记录始终具有不同的 Direction 属性值
我不想手动设置 Direction = In 或 Direction = In ,我想使用生成器来指定它。
这样的发电机会是什么样子?
我想留下这样的代码
这是我没有运气的尝试
谢谢
这是我的一些类型
f# - Expecto FsCheck在生成字符串时出现堆栈溢出异常
我正在尝试学习如何正确使用 FsCheck,并将其与 Expecto 集成。如果我使用默认的 FsCheck 配置,我可以运行属性测试,但是当我尝试使用自己的生成器时,它会导致堆栈溢出异常。
这是我的发电机
我正在尝试像这样使用它:
异常甚至在进入Gen.where
函数之前就被抛出
我究竟做错了什么?谢谢
c# - 在 FsCheck 中将两个生成器组合成一个任意值
我有一个属性,我想在 的集合上进行测试Stuff
,其中一个Stuff
满足某个属性。我有一种方法可以生成Stuff
令人满意的属性,还有一种方法可以生成不满足的属性Stuff
。
今天,我正在做这样的事情(是的,我在 C# 中使用 FsCheck):
但这对排序进行了硬编码,即Stuff
集合中满足属性的排序;我也想仲裁。
一种方法是嵌套Prop.ForAll
调用;一个生成确定排序的东西的外部生成器,以及一个内部生成器,它是我上面的那个,但将控制排序的参数传递给集合构建器:
但这感觉很笨拙和令人费解。是否有更简单和/或更惯用的方法来实现相同的目标,即测试两个任意输出的笛卡尔积?
json - Json 提供的类型 gens 不适用于“with”
这是一个片段,它演示了我将要讨论的内容:
我正在尝试制作一个具有一些不断生成的字段的生成。我可以将集合实例的名称分配给 foo,但由于某种原因,我无法构造另一个稍微修改过的 stuct 版本。它告诉我 item 没有名为 Name 的属性,当它明显位于它之前的行时,它确实存在。出于某种原因,我可以不使用这些库的“with”语法吗?
c# - 将 fscheck 中的属性与过滤的项目一起使用
我刚开始使用 FsCheck 并想更深入地挖掘,我有以下测试用例:
现在,我只想要httpStatusCode
哪些是失败的,我如何使用 FsCheck 来实现呢?我有以下代码:
但是不知道如何将其挂钩到Property
我的测试用例的属性中。对于如此微不足道的事情,在线示例相当复杂。任何帮助或指导将不胜感激。
有这样的东西会很好,但对于自定义对象和自定义逻辑。
干杯。
f# - 自定义 FsCheck 输出
我正在 VisualStudio 中使用 FsCheck 和 NUnit 进行测试。
当前的问题是:我设法生成随机图(用于测试某些图功能),但是当测试失败时,FsCheck 会吐出整个图并且它不使用 ToString 因此它实际上会转储原始记录列表,并且您看不到任何内容那里。
此外,我不仅需要用于检查的输入图,还需要我在运行属性时创建的一些其他数据。
那么如何更改 FsCheck 的输出行为以便
- 实际上在输入图上调用我的 ToString 方法
- 输出更多信息
当测试失败?
编辑:这是我当前的测试设置。
testing - 强制 FsCheck 生成 NonEmptyString 以区分字符串类型的联合字段
我正在尝试使用 FsCheck 实现以下行为:我想创建一个生成器,它将生成一个MyUnion
类型的实例,每个字符串字段都是非空/空的。
我的“真实”类型比 大/深得多MyUnion
,并且 FsCheck 能够毫无问题地生成实例,但联合案例的字符串字段有时为空。(例如它可能会生成B (Y (123, ""))
)
也许有一些明显的方法可以结合 FsCheckNonEmptyString
及其对生成我所缺少的任意联合类型的支持?
非常感谢任何正确方向的提示/指针。
谢谢!
xunit.net - FSCheck 是否适合测试类型构造?
背景:
我有大量满足以下规则的命令:
- 没有设置器(不可变)
- 一个构造函数
- 参数名称与正在设置的属性的名称匹配(大小写除外)
我想编写一个测试器来测试以下内容
- 鉴于提供了所有参数,我得到了该类的一个实例,并且所有属性都设置为传递的值。
- 鉴于基于类型构造函数的任何一个所需参数为空、空等,都会引发参数异常。
现在,我可以通过反射来编写它,手动滚动它,没问题,但我想知道我是否可以利用 FsCheck 生成器来生成参数。
这是我可以通过 FSCheck 实现的吗?
testing - 为什么先决条件在此 FsCheck 示例中不起作用?
我正在尝试使用FsCheck
图书馆。我可以做一些测试,但前提条件似乎不起作用。下面的代码提供了一个示例:
使用空列表作为参数调用该函数会checkSortEven
产生异常,因为List.rev
同样如此。因此,在上面的代码中,我尝试使用前置条件,使用==>
运算符来防止 FsCheck 尝试空列表。但是,无论是测试的第一个列表为空还是收缩列表为空checkSortEven
,都称为产生异常:
为什么在我的基于属性的测试中忽略了我的先决条件?但这似乎是另一种情况(嵌套函数)。
我也尝试过Check.QuickThrowOnFailure
,而不是Check.Quick
基本相同的结果。
关于为什么先决条件在此示例中不起作用的任何想法?