private void instantiateAnyUnitiaializedSteps(Object testCaseOrSteps, StepFactory stepFactory, StepsAnnotatedField stepsField) { if (!stepsField.isInstantiated(testCaseOrSteps)) { ensureThatThisFieldIsNotCyclicOrRecursive(stepsField); Class<?> scenarioStepsClass = stepsField.getFieldClass(); Object steps = StepLibraryCreator.usingConfiguredCreationStrategy(stepFactory, stepsField, environmentVariables) .initiateStepsFor(scenarioStepsClass); stepsField.setValue(testCaseOrSteps, steps); stepsField.assignActorNameIn(steps); injectNestedScenarioStepsInto(steps, stepFactory, scenarioStepsClass); } }