Frage

Die Funktion verboseCheck von Quick Check 1 scheint in Quick Check 2 (oder zumindest, ich kann es nicht finden) fehlen. Gibt es eine andere Art und Weise zu zeigen, welche Werte während des Tests verwendet werden?

War es hilfreich?

Lösung

Sieht aus wie verbose (und andere verbose- Funktionen) wurden wieder in Quickcheck in Version 2.4

zurück

Andere Tipps

Die sample Funktion ist auch nützlich:

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"
....

Auf diese Weise ist es einfach, mit Ihren Willkürliche Instanzen zu spielen, und stellen Sie sicher, sie erzeugen, was Sie denken, sie erzeugen.

Ja, das scheint 1 eine Funktionalität Regression in Bezug auf Quick Check zu sein.

Sie können es umgehen, indem Sie Ihre Objekte mit einer Debug.Trace.trace Aussage mit Anmerkungen versehen, jedoch. So etwas wie:

import Debug.Trace

prop_eq xs = traceShow xs $ 
   xs == reverse (reverse xs)

Ich bin glücklich mit

import Debug.Trace
verboseCheck prop = quickCheck (\input -> traceShow input $ prop input)

ich auf Quellen einen Blick nahm, und es scheint, dass Args Refactoring wurde, configEvery ist nicht mehr da, und damit sind Sie nicht in der Lage, alle Testwerte zu drucken, ohne QuichCheck Quellen Patchen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top