我编写了一个算法来找到Haskell中子集和问题的解决方案。签名是 subsetSum :: (Ord a, Num a) => [a] -> a -> Maybe [a]
QuickCheck似乎是一个很好的测试。例如,我在这里,我可以检查的属性之一: prop_sumEqualsS l s = case subsetSum l s of
Just solution ->
我想了解如何集成cabal的一些quickcheck测试。这gist暗示quickCheck函数失败时返回非零状态,但我没有得到该行为,所以使用cabal的exitcode-stdio-1.0测试套件类型似乎不适用于我,除非我想在我的测试中调用error。 cabal user guide也提到了一个detailed-1.0测试套件,但AFAICT这个还不存在。那仍然是这样吗? 从this one