Feature: some scenarios Scenario: failing # formatter-tests/features/some_scenarions_including_failing.feature:3 Given passing step # formatters_print_test.go:63 -> passingStepDef When failing step # formatters_print_test.go:79 -> failingStepDef step failed Then passing step # formatters_print_test.go:63 -> passingStepDef Scenario: pending # formatter-tests/features/some_scenarions_including_failing.feature:8 When pending step # formatters_print_test.go:77 -> pendingStepDef TODO: write pending definition Then passing step # formatters_print_test.go:63 -> passingStepDef Scenario: undefined # formatter-tests/features/some_scenarions_including_failing.feature:12 When undefined Then passing step # formatters_print_test.go:63 -> passingStepDef --- Failed steps: Scenario: failing # formatter-tests/features/some_scenarions_including_failing.feature:3 When failing step # formatter-tests/features/some_scenarions_including_failing.feature:5 Error: step failed 3 scenarios (1 failed, 1 pending, 1 undefined) 7 steps (1 passed, 1 failed, 1 pending, 1 undefined, 3 skipped) 0s You can implement step definitions for undefined steps with these snippets: func undefined() error { return godog.ErrPending } func FeatureContext(s *godog.Suite) { s.Step(`^undefined$`, undefined) }