【问题标题】:How to add timeouts in Go subtests?如何在 Go 子测试中添加超时?
【发布时间】:2018-06-08 20:24:53
【问题描述】:

我目前正在使用 Go 子测试并行运行多个测试。像这样的 -

func TestGroupedParallel(t *testing.T) {
    for _, tc := range testCases {
        tc := tc // capture range variable
        t.Run(tc.Name, func(t *testing.T) {
            t.Parallel()
            if got := foo(tc.in); got != tc.out {
                t.Errorf("got %v; want %v", got, tc.out)
            }
            ...
        })
    }
}

当我使用超时标志时,它会终止所有并行运行的测试。有什么办法可以让每个子测试超时吗?谢谢!

【问题讨论】:

    标签: unit-testing testing go


    【解决方案1】:

    不,超时是全局的。

    【讨论】:

    • @radu-matei 问题是:“有什么方法可以让每个子测试都超时吗?”答案是:不。为什么这不是一个答案?
    • 嗨,@Volker,很抱歉以错误的方式标记了这个!我删除了评论并赞成您的回复。谢谢!
    猜你喜欢
    • 2021-07-31
    • 2022-09-29
    • 2022-12-10
    • 1970-01-01
    • 2018-12-21
    • 2023-01-29
    • 1970-01-01
    • 2014-06-05
    • 2016-09-30
    相关资源
    最近更新 更多