在HSpec中设置测试套件

时间:2016-06-04 11:56:11

标签: haskell haskell-stack hspec

如何在HSpec中指定测试套件?我将为每个模块准备多个*.hs测试文件,我想运行stack test并运行所有测试。我该如何设置?

我试图在我的cabal文件中列出这样的测试模块,但它不起作用:

test-suite foo-test
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  main-is:             Spec.hs
                     , Mod1Spec.hs
  build-depends:       base
                     , containers >= 0.5.6.2
                     , hqfl
                     , hspec >= 2.2.3
                     , hspec >= 2.2.3
                     , mtl >= 2.2.1
                     , pipes >= 4.1.8
                     , random >= 1.1
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N
  default-language:    Haskell2010

1 个答案:

答案 0 :(得分:4)

以下是有关hspec测试的一些文档:

http://hspec.github.io/hspec-discover.html

如果您的主要规格模块只包含以下行:

{-# OPTIONS_GHC -F -pgmF hspec-discover #-}

hspec-discover将扫描目录树以进行规范测试。

另外 - 这是一个小的hspec示例:

https://github.com/hspec/hspec-example