有条件地运行测试,但构建标志不起作用

我正在 golang 中运行一些测试,我想避免运行缓慢的测试,例如这个使用 bcrypt 所以它很慢:


// +build slow

package services


import (

    "testing"

    "testing/quick"

)


// using bcrypt takes too much time, reduce the number of iterations.

var config = &quick.Config{MaxCount: 20}


func TestSignaturesAreSame(t *testing.T) {

    same := func(simple string) bool {

        result, err := Encrypt(simple)

        success := err == nil && ComparePassWithHash(simple, result)

        return success

    }


    if err := quick.Check(same, config); err != nil {

        t.Error(err)

    }

}

为了避免在每次迭代中运行它,我设置了// +build slow标志。这应该只在执行时运行,go test -tags slow但不幸的是它每次都在运行(-v 标志显示它正在运行)。


知道出了什么问题吗?


有只小跳蛙
浏览 168回答 1
1回答

慕森卡

您// +build slow需要后跟一个空行为了将构建约束与包文档区分开来,一系列构建约束后必须跟一个空行。访问构建约束
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go