作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要用 quickCheck
测试一些功能做验证这些功能。
我需要发送范围内的值 1
至 40
到该功能,但我是 quickCheck
的初学者它是修饰符。
我试过 :
myTestFunction (x,y,z) (Positive div) = ....
quickCheck myTestFunction
div
保持积极但可以取得非常高的值(value)(我不想要)
a
范围内给出 div 随机值的正确方法是什么?至
b
?
quickCheck
?
最佳答案
你需要结合两个部分。第一个是generation — 您需要编写一个 QuickCheck 随机生成器,以输出所需范围内的数字。令人高兴的是,我们可以使用内置函数来做到这一点:
choose :: Random a => (a, a) -> Gen a
forAll :: (Show a, Testable prop) => Gen a -> (a -> prop) -> Property
prop_myTest (x, y, z) = forAll (choose (1, 40)) $ \ ndiv -> ...
prop_
”命名方案通常用于 QuickCheck 测试。这将帮助人们快速了解您的代码中发生了什么并且被一些测试框架使用,因此现在进入是一个好习惯。
关于haskell - 使用 quickCheck 测试具有有界值列表的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29106904/
我是一名优秀的程序员,十分优秀!