簡體   English   中英

Terratest 對錯誤的斷言拋出錯誤

[英]Terratest throws error on assertions on errors

你好我有以下測試

func badTags(t *testing.T){
  terraformOptions := &terraform.Options{
        TerraformDir: "../bad_values",
    }
  tags := terraform.Output(t, terraformOptions, "test_required_tags")
  assert.Error(t, tags)

}

請注意,標簽的值應該拋出錯誤,但我不斷收到以下錯誤

string does not implement error (missing Error method)

如果我刪除 assertion ,則會按預期拋出帶有 String 消息的錯誤。 我如何斷言錯誤?

assert.Error斷言函數返回了錯誤。 ,就像:

if err == nil {
    t.Error("no error returned")
}

但是這里給定的參數是tags ,並且tags是一個字符串,根據terratest 文檔,為什么您會收到以下錯誤:

string does not implement error (missing Error method)

使用OutputForKeys必須解決您的問題,請嘗試以下操作:

func badTags(t *testing.T){
  terraformOptions := &terraform.Options{
        TerraformDir: "../bad_values",
    }
  validTags := terraform.OutputForKeys(t, terraformOptions, []string{"test_required_tags"})
  assert.Contains(t, validTags, "test_required_tags")
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM