多包项目中的测试输出未使用“堆栈测试”显示

Tests output in multi-package project is not shown with `stack test`

我有一个多包项目,每个包中都有测试服。当我 运行 stack test 命令时,我希望显示每个包测试的输出,但事实并非如此。这是我得到的:

package1-0.1.0.0: test (suite: package1-test)
package2-0.1.0.0: test (suite: package2-test)
package3-0.1.0.0: build (test)
package1-0.1.0.0: Test suite package1-test passed
package3-0.1.0.0: test (suite: package3-test)
package3-0.1.0.0: Test suite package3-test passed
...

我想看到的是这样的:

   test/Test.hs
      Test.Pack1
        Ggurda
          skovoroda:  OK (0.41s)
            OK
          patak: OK (7.59s)
            OK

如果我明确指定包 (stack test package1:test:package1-test),我也能看到详细的测试输出,但我不想为我拥有的所有包手动完成。

是否有命令可以帮助显示每个包的每个测试结果的详细输出?

您可以使用 --dump-logs 标志或通过将以下行添加到您的 stack.yaml:

来使用 the corresponding option
dump-logs: all