type TestSuite … var testSuites … func RegisterTestSuite(name string, suite TestSuite) { … } func GetTestSuiteKeys() []string { … } func GetTestSuite(name string) (TestSuite, error) { … } type NewRunner … var runners … func RegisterRunner(name string, runner NewRunner) { … } func GetRunner(name string) (NewRunner, error) { … }