我正在尝试开始使用hspec。我有一个使用QuickCheck的工作案例,但我只是想在运行cabal test时了解更多细节。我从hspec找到了this article,它给出了在运行可执行文件时提供一些更详细的控制的说明。我目前正在使用hi来初始化我的haskell包,所以我的cabal测试套件看起来像这样:
Test-Suite spec
Type: exitcode-stdio-1.0
Default-Language: Haskell2010
Hs-Source-Dirs: src
, test
Ghc-Options: -Wall
Main-Is: Spec.hs
Build-Depends: base
, hspec
, QuickCheck
, quickcheck-instances
, mtl
, text
, transformers我的猜测是类似于“默认命令行参数”,但这感觉就是不正确。我如何向hspec套件提供参数?
此外,这可能很重要。hi拆分测试套件,因此Spec.hs中唯一的内容是:
{-# OPTIONS_GHC -F -pgmF hspec-discover #-}但是所有的测试和代码都驻留在导出main和spec的test/MainSpec.hs中。
发布于 2016-06-05 22:51:57
使用http://hspec.github.io/hspec-discover.html上的自定义main function部分查看
为方便起见,请将相关内容复制到此处:
这里是一个示例,它展示了如何利用它来指定不同的默认格式化程序:
-- file test/Spec.hs {-# OPTIONS_GHC -F -pgmF hspec-discover -optF -- module -name=Spec #-} -- file test/Main.hs module name import Test.Hspec.Runner import Test.Hspec.Formatters import qualified Spec main ::IO () main = hspecWith defaultConfig {configFormatter = Just progress} Spec.spec
https://stackoverflow.com/questions/27465585
复制相似问题