golang TestMain()函数设置测试无法访问的变量

I've got the following TestMain function:

func TestMain(m *testing.M) {
  db := "[working_db_connection]"
  dbInstance, _ := InitializeRepo(db, 2)
  runTests := m.Run()
  os.Exit(runTests)
}

and the following sample test

func TestSomeFeature(t *testing.T) {
  fmt.Println(dbInstance)
}

The function TestSomeFeature does run, but says dbInstance is undefined. Why would this not have access to the variable? From examples I'm seeing variables et in TestMain are accessed with this syntax.

dbInstance is a local variable of TestMain and it doesn't exist in the lifecycle of TestSomeFeature function. and for this reason the test suite says to you that dbInstance is undefined.
Define the variable as global variable outside TestMain and then instantiate the variable in the TestMain

var DbInstance MyVariableRepoType

func TestMain(m *testing.M) {
  db := "[working_db_connection]"
  DbInstance, _ = InitializeRepo(db, 2)
  runTests := m.Run()
  os.Exit(runTests)
}

You should have your variable defined outside of any function.

var dbInstance DbType