问题标签 [scalacheck]

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 回答
720 浏览

scala - 将 SBT 与 ScalaTest 一起使用时,是否可以安全地忽略 ScalaCheck/Specs 警告?

我有一个简单FunSuite的基于 ScalaTest:

我正在使用以下 SBT 项目配置运行它:

但是,当我运行时,sbt test会收到以下警告:

目前我假设这些只是“噪音”(由统一的测试接口引起?),我可以放心地忽略它们。但这对我内心的强迫症部分来说有点烦人(尽管我准备为其他框架添加依赖项并不是那么烦人)。

这是一个正确的假设,还是我的测试/配置代码中有细微的错误?如果可以安全地忽略,是否有任何其他方法可以抑制这些错误,或者人们是否经常包含所有三个框架,以便他们可以为不同的测试挑选最佳方法?

蒂亚,保罗。

(添加:scala v2.7.7 和 sbt v0.7.4)

0 投票
2 回答
823 浏览

scala - scala-2.8 和 scalacheck 出错:道具版本错误

这是实际的 scala-2.8,并且 scalacheck 之前已使用 sbaz 进行了更新(sbaz 更新;sbaz 升级)。

scalacheck for scala-2.8 是否正在开发中,不适合 2.8,或者可能是什么问题?

我是否必须获取源代码并自己重新编译 scalacheck?

0 投票
2 回答
923 浏览

testing - scalacheck 中常规类的生成器

在 scalacheck 的用户指南中有“生成案例类”段落。我从中修改了示例以使用常规类而不是案例类:

似乎一切正常,但在我在这里问之前我害怕在生产代码中使用这种方法:有什么陷阱吗?

0 投票
2 回答
6232 浏览

scala - scalacheck 中的大小生成器

scalacheck项目的用户指南提到了大小的生成器。解释代码

什么也没给我解释。经过一番探索,我了解到生成序列的长度不取决于生成器的实际大小(根据 javadoc,Gen 对象中有 resize 方法“创建生成器的调整大小版本”(也许这意味着不同的东西?))。

你能解释一下我错过了什么,并给我一些你如何在测试代码中使用它们的例子吗?

0 投票
1 回答
449 浏览

scala - 在 scalacheck 属性中使用规范匹配器

我正在尝试在 scalacheck 属性中使用规范数学。例如,我有一个像这样工作的匹配器:

当我想在 scalacheck 属性中使用这个匹配器时,我执行以下操作:

不幸的是,在这种情况下,我删除了我放入匹配器中的调试信息,并且当属性失败时我需要这些信息。是否有规定的方式在道具中使用匹配器?

0 投票
4 回答
1936 浏览

scala - 使用 scalacheck 生成任意(合法)Unicode 字符?

我正在尝试使用 scalacheck 1.6.6 和规范 1.7(scala 2.8.1)创建一个生成(非零长度)合法 unicode 字符串的生成器。

我希望我可以创建像这样的生成器:

...然后从规格中使用它们,例如:

但是,似乎在 unicodeChar 中使用过滤器会导致问题:

如果我从 unicodeChar 中删除过滤器,我的测试会通过,但我稍后会遇到其他问题,因为我的字符串并不总是定义明确的 unicode。

在此先感谢您提供有关如何实现此目标的任何建议。

0 投票
1 回答
287 浏览

scala - 如何使用 maven 从 specs+scalacheck 中获得漂亮的输出?

当我使用 IDEA 运行 Specs + Scalacheck 测试时,我得到了非常漂亮的输出:

为了让我的测试与 Maven 一起运行,我通常有:

...但是输出不是很令人满意:

在这种情况下,有没有办法获得漂亮的输出?

谢谢...

0 投票
2 回答
1804 浏览

scala - generating permutations with scalacheck

I have some generators like this:

This leads to duplicates ... I might get two a's, etc. What I really want is to generate random permutation with exactly 0 or 1 or each of a, b, c, d, or e (with at least one of something), in any order.

I was thinking there must be an easy way, but I'm struggling to even find a hard way. :)

Edited: Ok, this seems to work:

...borrowing heavily from Gen.pick.

Thanks for your help, -Eric

0 投票
2 回答
5235 浏览

scala - 如何使用 Specs2 和 Scalacheck 自动测试字符串参数?

为 Scala重写的specs2测试框架将自动化测试与scalacheck集成在一起。specs2 文档中给出的关于如何将 scalacheck 与 specs2 一起使用的示例使用整数或更复杂的自定义生成器,如eric 的 json 示例

在尝试让一个稍微不那么复杂的示例工作时,我很挣扎,因为如果我想生成字符串参数而不是整数,我不知道如何使用 specs2 和 scalacheck。这个快速入门示例如何

p>

scalacheck 主页看,如果它是使用 scalacheck 集成编写为 Specs2 规范的?

0 投票
2 回答
3569 浏览

scala - 如何让 ScalaCheck 的 Arbitrary 始终生成一些特殊情况值?

除了一些随机值之外,我希望始终使用至少一组固定的特殊值来测试我的所有属性。我想在我的生成器规范中定义它,而不是在使用该生成器类型的每个测试中。例如,如果我正在生成 Ints,我希望我的生成器始终为每个测试用例生成至少 0、1 和 -1。这可能吗?

到目前为止,我想出的最好的方法是制作一个大小合适的生成器,其中最小的n 个大小对应于我的n 个特殊情况。这至少是有问题的,因为当最大测试数配置为低于最大尺寸参数时,不会测试所有可能的尺寸。