当我谷歌如何将单元测试与cabal文件集成时,我发现
如何使用cabal运行所有单元测试(例如,每次我进行"cabal build")?
我有一个Cabal测试目标:
test-suite Tests
type: exitcode-stdio-1.0
main-is: Main.hs
hs-source-dirs: test, src
build-depends: base, …
default-language: Haskell2010
Run Code Online (Sandbox Code Playgroud)
一个简单的测试Main.hs:
import Test.HUnit
testSanity = TestCase $ assertEqual "Should fail" 2 1
main = runTestTT testSanity
Run Code Online (Sandbox Code Playgroud)
现在运行cabal test通行证:
Test suite Tests: RUNNING...
Test suite Tests: PASS
Test suite logged to: dist/test/Project-0.1.0-Tests.log
1 of 1 test suites (1 of 1 test cases) passed.
Run Code Online (Sandbox Code Playgroud)
即使在测试套件日志中正确记录了失败:
Test suite Tests: RUNNING...
Cases: 1 Tried: 0 Errors: 0 Failures: 0
### Failure:
Should fail
expected: 2 …Run Code Online (Sandbox Code Playgroud)