when(propertyContext.getStepProperties("step3")).thenReturn(props);
StepSynchronizationManager.register(new StepExecution("step3", new JobExecution(5L), 3L));
StepContext context1 = factory.getObject();
StepContext context2 = factory.getObject();
assertTrue(context1 == context2);
assertEquals(3L, context1.getStepExecutionId());
assertEquals("value1", context1.getProperties().get("key1"));