Sammeln Sie automatisch alle QuickChecks

8

Als Fan von quickCheck habe ich eine Menge

%Vor%

während meines gesamten Programms.

Um es einfach zu machen, definiere ich

%Vor%

Aber gibt es eine nette Möglichkeit, runchecks zu generieren?

TL; DR: Ich möchte alle QuickChecks einfach in einer Datei ausführen. Ich denke, eine Möglichkeit besteht darin, den runnable-Tests test_ oder etwas Ähnliches voranzutreiben, aber das könnte zu hacky sein.

    
Christian Neverdal 26.04.2012, 18:11
quelle

2 Antworten

7

Sie können dies mit dem Paket test-framework-th tun. Tun Sie einfach:

%Vor%

Dies wird die test-framework Art der Ausführung von Tests verwenden, d. h. Sie erhalten etwas mehr Informationen als das, was Sie bekommen würden, indem Sie einfach die Tests nacheinander ausführen, was oft eine gute Sache ist.

Sie müssen offensichtlich TemplateHaskell aktivieren, damit dies funktioniert. Fügen Sie entweder Default-extensions: TemplateHaskell zu Ihrer Cabal-Datei hinzu oder fügen Sie {-# LANGUAGE TemplateHaskell #-} am Anfang der Datei hinzu.

    
dflemstr 26.04.2012, 18:27
quelle
8

Eine zusätzliche Anmerkung: Diese Funktionalität ist auch in QuickCheck 2 vorhanden, siehe die Funktion quickCheckAll , was einen Import von Test.QuickCheck.All sowie TemplateHaskell erfordert. quickCheckAll testet alle Funktionen in Ihrem Modul, deren Name mit prop_ beginnt.

    
danr 27.04.2012 05:20
quelle

Tags und Links