fscheck

    3热度

    2回答

    我正在使用VisualStudio中的FsCheck和NUnit进行测试。 问题目前是:我设法生成随机图(用于测试一些图形功能),但是当一个测试失败,FsCheck吐出来的全图,所以它从字面上转储的记录,你的原始清单它不使用的ToString在那里看不到任何东西。 另外我不仅需要输入图形进行检查,而且还需要运行属性时创建的一些其他数据。 因此,如何能更改FsCheck的输出行为,以 居然打电话给我

    7热度

    1回答

    我试图用FsCheck实现以下行为:我想创建一个生成器,该生成器将生成MyUnion类型的实例,每个字符串字段都是非-null /空。 type MyNestedUnion = | X of string | Y of int * string type MyUnion = | A of int * int * string * string | B o

    4热度

    1回答

    我有一个F#库,里面有很多我想测试的非公开内容。目前,所有不属于程序集公共API的代码都标记为internal(具体来说,它放置在标记为internal的模块中)。我使用InternalsVisibleToAttribute使此代码对我的测试程序集可见。然而,为了让测试程序集编译,在签名中使用内部类型的所有测试(其中大部分是因为我使用FsCheck来自动生成测试输入)也必须标记为内部(这需要应用于

    3热度

    2回答

    我试图学习如何正确使用FsCheck,并将它与Expecto整合在一起。如果我使用默认的FsCheck配置,我可以运行属性测试,但是当我尝试使用自己的Generator时,会导致堆栈溢出异常。 这里是我的发电机 type NameGen() = static member Name() = Arb.generate<string * string> |> Gen.

    1热度

    1回答

    我有一个属性,我想测试一个Stuff的集合,其中一个Stuff满足某个属性。我有一种方法可以生成满足属性的Stuff,并且可以生成不包含Stuff的方法。 今天,我在做这样的事情(是的,我在C#中使用FsCheck): IEnumerable<Stuff> GetStuffCollection(int input) { yield return GenerateStuffSatisfy

    2热度

    1回答

    我正在尝试解决钻石kata以了解如何使用fscheck库编写基于属性的测试。我想用C#编写测试,我正在使用Visual Studio 2017. 我想编写一个基于属性的测试,它不会生成任何随机字符作为输入,而只是字母。我不知道如何编写生成器fscheck需要执行此操作以及在哪个文件中放置代码? 我到处搜索和阅读文档,但有麻烦(部分原因是我不能很好地将F#翻译成C#)。 [Property]如何将输

    3热度

    1回答

    FsCheck有一些整洁的默认Arbitrary类型来生成测试数据。但是如果我的测试日期之一取决于另一个呢? 例如,考虑使获得的子永远不能比输入的字符串长的string.Substring()属性: [Fact] public void SubstringIsNeverLongerThanInputString() { Prop.ForAll( Arb.Default.No

    1热度

    1回答

    背景: 我有大量的命令满足以下规则: 没有设置器(不可变) 一个构造 参数名称匹配正在设置的属性的名称(除了外壳) 我想写一个测试仪,测试如下 考虑到提供了所有参数,我得到了该类的一个实例,并且所有属性都设置为传递的值。 基于类型构造函数引发参数异常,假定任何一个需要调用的参数是null或空等。 现在,我可以通过反射来写这个,手滚动它,没问题,但我想知道是否可以利用FsCheck生成器来生成参数。

    3热度

    1回答

    这里是一个片段演示了什么,我将谈论很好地工作不断。我可以指定foo集合实例的名称,但出于某种原因,我无法构建另一个稍微修改过的stuct版本。它告诉我物品没有名为Name的属性,当清楚地在它之前的行上时,它确实存在。由于某些原因,我可以不使用这些库的“with”语法吗?

    0热度

    1回答

    我刚开始用FsCheck,想挖得更深一些,我有以下测试案例: [Property] public void some_test(HttpStatusCode httpStatusCode) 现在,我只希望httpStatusCode这是失败了,怎么办我使用FsCheck实现了这一点?我有以下代码: Prop.ForAll<HttpStatusCode>(code => new Func<bo