gpt4 book ai didi

haskell - 获取堆栈以作为 --test-arguments 的一部分传递测试套件名称

转载 作者:行者123 更新时间:2023-12-02 02:47:15 24 4
gpt4 key购买 nike

使用 cabal,可以建立一个持续构建,以许多 CI 系统接受的格式记录测试成功/失败,例如:

cabal test '--test-option=--jxml=test-results/$test-suite.xml'

这里的重要部分是 $test-suite替换为测试的名称,以便不同的测试将其结果放入不同的文件中。

当我使用堆栈时,所有测试都得到了选项 --jxml=test-results/$test-suite.xml传递给他们,所以最终的结果是测试覆盖了彼此的结果。

有什么办法可以用 stack 运行我所有的测试吗?这样我就可以告诉每个测试套件在不同的地方写他们的结果?

我什至会接受一些为我解析 cabal 文件的堆栈命令,并告诉我有哪些测试套件,因为这样我就可以在 bash 中编写一个循环,一次调用每个测试一个。

最佳答案

I'd even accept some stack command that parsed the cabal file for me and told me what test suites there are, because then I could script a loop in bash calling each test one at a time.



如果您愿意接受, stack ide targets将返回一个目标列表,您可以从中进行一些抨击以获取测试套件列表。像这样的东西:

stack ide targets 2>&1 |
while IFS=: read pkg type suite; do
[[ $type = test ]] && stack test ":$suite" --test-arguments="--jxml=test-results/$suite.xml"
done

关于haskell - 获取堆栈以作为 --test-arguments 的一部分传递测试套件名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55957477/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com