问题标签 [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 投票
2 回答
3099 浏览

scala - 如何显示 ScalaCheck 测试中抛出的异常的整个堆栈跟踪?

我正在运行ScalaCheck测试sbt,如果我的测试由于被测代码引发异常而失败,则测试报告会显示失败的测试、引发的异常和消息,但不会显示整个堆栈跟踪(请注意Exception: java.lang.NullPointerException: exception下面的仅异常消息) .

我从 2008 年发现https://groups.google.com/forum/#!msg/scalacheck/AGBgE_JlqpI/B2eSG84_QzYJ似乎报告了同样的问题,并表明它应该在下一个版本中修复。我目前正在使用最新版本 1.11.4。

我还发现http://www.scala-sbt.org/release/docs/Testing.html表明sbt有一个testOptions我认为使用起来很合理的密钥,并且我知道 ScalaTest 有一个完整堆栈跟踪的设置"-F",但是不适用于 ScalaCheck。即使是上面页面中的示例,testOptions in Test += Tests.Argument(TestFrameworks.ScalaCheck, "-d", "-g")也给了我一个错误:

我如何使用这些测试参数,是否在任何地方都有这些参数的列表,最后,是否有可能从中获取堆栈跟踪,还是我在追逐红鲱鱼?

0 投票
1 回答
139 浏览

scala - 是否可以在 ScalaCheck 生成器中创建线性级数

我有一个关于 ScalaCheck 的新手问题,这是我第一次玩。是否有可能创建一个Gen[Int]从 0 到 N 线性发展的变量。

这样当我forAll在 ScalaCheck 中使用时,它会将输入增加Int1。

我希望这个示例以增加的值进行测试

也许这会破坏 ScalaChecks 的目的,我应该在 ScalaTest 中以这种方式进行测试。

0 投票
0 回答
820 浏览

scala - 正确使用 scalacheck 生成器

我在正确使用 scalacheck 生成器时遇到了一些困难。我想在某个范围内测试具有整数参数的任意数组 - 代码主要如下:

但是,我得到包含0 的整数值。当我更改Prop.forAllProp.forAllNoShrink它时,由于某种我不清楚的原因,它会起作用。

基本上,我只想做以下事情:

b在给定范围内。最简单的方法是什么?

0 投票
2 回答
51 浏览

scala - 带有冗余和投票的财产检查

我有同一个功能合同的多个实现。有些是天真和直接的,有些是更复杂和优化的。我想使用PropSpec.

问题是如何运行所有冗余实现并成对比较输出。如果计算值与另一种实现不同,则应将测试标记为失败。如果有两个以上的实现,应该可以根据投票决定哪一个失败,就像在TMR系统中一样

0 投票
1 回答
409 浏览

scala - 如何在属性检查中指定对 forAll 方法的检查次数

forAll方法采用生成器并对其执行多次检查。默认通过生成器的 100 次检查。运行次数成倍增加,如果您使用多个生成器,您可能很快就会变得太大。

我想根据它们的重要性对生成器进行排序,并减少无关紧要的检查。所以我需要以某种方式指定每个生成器需要运行多少次。我查看了生成器和forAll方法的 API,但没有发现任何线索。它们都不接受可能指定检查运行行为的参数。

scalatest 为 scalacheck 的forAll方法提供包装器。所以我正在寻找包装或原件的解决方案。

0 投票
1 回答
205 浏览

scalacheck - 使用 ScalaCheck 测试 java 类

我正在尝试使用 scalacheck 测试一个 java 类。例如,我在 ...\src\main\java\ 中有一个类 Queue

}

然后我在 ...\src\test\scala\ 中有一个 Scala 测试类 QueueTest.scala

我只需要先了解如何扩展 java 泛型 Queue 类?我要做的就是测试入队和出队方法。

我查看了 Rick Nillson 的 github 中的 StringUtils.scala 示例,但仍不清楚。

任何建议,将不胜感激

0 投票
1 回答
3937 浏览

scala - 在类路径中指定 jar 时,在类路径中找不到 Scala 类

我正在尝试使用ScalaCheck。下面是我的HelloWorld.scalaScala 代码,它从该方法导入ScalaCheck并使用该Gen.const方法。

通过键入编译(这有效)

通过键入执行(2 个选项)

斯卡拉的输出

当我删除所有 ScalaCheck 代码HelloWorld.scala并在不使用 -cp 标志的情况下进行编译时,一切正常。将 ScalaCheck 代码和 jar 添加到 -cp 标志时,出现上述错误。

如何正确设置类路径?

(版本:

Scala 编译器版本 2.11.2 -- 版权所有 2002-2013,LAMP/EPFL

Scala 代码运行器版本 2.11.2 -- 版权所有 2002-2013,LAMP/EPFL

)

操作系统:Linux

0 投票
1 回答
298 浏览

specs2 - 将 Gen.posNum 限制在一个范围内

我正在Arbitrary[Source]我的规范中构建一个,如下所示:

如何使跟随检查通过?(即如何限制i在一个范围内)

0 投票
1 回答
391 浏览

scala - 如何在控制台/Scala REPL 中使 import org.scalacheck.Gen 成为可能?

我正在尝试在 REPL 上运行ScalaCheck

所以我做了一个 sbt 项目,内容如下build.sbt

然后,我输入reloadupdated获取库。

最后,运行后console,我尝试Gen通过以下方式导入:

查看文档,我不确定为什么我不能执行此导入。

0 投票
1 回答
167 浏览

scala - 如何查看 scalacheck 生成的值?

我正在使用 scalatest 和 scalacheck 进行一些基于属性的测试。我对 scala 和这些库都是新手,所以假装这段代码不像实际那样难看。

我有一个这样的测试:

如何查看 scalacheck 生成的值?我目前正在运行这样的测试:

但我得到的只是通过/失败输出。