10

QuickCheckのBatchモジュールはバージョン 2で削除されました( 1.2.0.1 にはまだあります)。このため、私はいつも、mapM_複数のテストを一緒に行うのはハックのようなものだと感じています。QuickCheck 2 の後継機能を見落としていませんか? 独立したテストをグループ化する標準的な方法はありますか?

4

1 に答える 1

9

を介して現在のモジュール内のすべてのテストをグループ化する「大きくするか、家に帰る」オプションがありますTest.QuickCheck.All。これには Template Haskell が必要で、すべてのプロパティは で始まる必要がありますprop_。元:

{-# LANGUAGE TemplateHaskell #-}

import Test.QuickCheck.All

prop_one, prop_two :: a -> Bool
prop_one = const True
prop_two = const True

runTests :: IO Bool
runTests = $quickCheckAll

main :: IO ()
main = runTests >>= \passed -> if passed then putStrLn "All tests passed."
                                         else putStrLn "Some tests failed."
于 2012-11-23T20:18:49.783 に答える