我只想在命令行上为stack test
设置了一些标志时运行昂贵的Hspec测试。我知道我可以使用stack test --test-arguments=...
,但我在命令行上会使用什么?我将如何在Spec.hs
中执行条件测试?我在网上其他地方似乎找不到一个好的例子。
编辑:在不指定跳过的情况下运行stack test
时,是否可以跳过测试?或者,如果有另一个类似的规范文件,只包含昂贵的测试,这可能吗?
您可以使用--skip=PATTERN
跳过测试。除此之外,如果不使用自动测试发现并为hspecWith
(configSkipPredicate
)设置Config
,则可以在自己的main
中检查命令行参数。
如果您想在不在命令行中指定的情况下自动跳过测试,可以使用.hspec
文件,请参阅此处。可以通过在命令行中指定匹配图案来覆盖跳过。