QuickCheck 1の機能verboseCheck
は、QuickCheck 2にはないようです(少なくとも、見つかりません)。テスト中にどの値が使用されているかを示す他の方法はありますか?
質問する
1523 次
5 に答える
7
このsample
関数も便利です。
Prelude Test.QuickCheck
ghci> sample (arbitrary :: Gen String)
""
")\223"
"(\227\&5F"
"\DC1"
"\136'\140\180\FS"
"K\DC2\NUL\CAN\253Q"
"\DC4\f\184&.\DC3\159\&1I\160j\147"
....
このように、任意のインスタンスで簡単に操作でき、インスタンスが生成すると思われるものを確実に生成できます。
于 2010-03-26T22:02:17.560 に答える
4
はい、これはQuickCheck1に関する機能の低下のようです。
ただし、Debug.Trace.traceステートメントを使用してプロパティに注釈を付けることで回避できます。何かのようなもの:
import Debug.Trace
prop_eq xs = traceShow xs $
xs == reverse (reverse xs)
于 2010-03-25T18:01:38.027 に答える
3
私は満足しています
import Debug.Trace
verboseCheck prop = quickCheck (\input -> traceShow input $ prop input)
于 2010-10-21T19:50:25.157 に答える
2
verbose
(およびその他のverbose
-関数)がバージョン2.4でQuickCheckに戻されたようです
于 2011-06-08T17:48:24.003 に答える
1
ソースを調べたところ、Args
リファクタリングされたようでconfigEvery
、もう存在しないため、QuichCheckソースにパッチを適用せずにすべてのテスト値を印刷することはできません。
于 2010-03-25T16:57:21.250 に答える