Hello Mauro,

I stumbled upon a beheavior of this method:
org.jbehave.core.ConfigurableEmbedder.configuredEmbedder()

It always calls these methods when being called:

embedder.useConfiguration(configuration());

embedder.useCandidateSteps(candidateSteps());

embedder.useStepsFactory(stepsFactory());



This had some unexpected side effects for me. For example I am logging
which steps are being used. Since I call configuredEmbeder() multiple
times, the method stepsFactory() is called multiple times. Even if I use
just one instance of embedder it is called many times since the JBehave
framework calls configuredEmbedder() many times.

Maybe it wold be good if there is another method added to
org.jbehave.core.ConfigurableEmbedder called "configureEmbedder" which
actually configures the embedder every time when it is called.

But the method "configuredEmbedder" should maybe be implemented with lazy
initialization, so that the calls in its method are just executed once.

What do you think about it?

Reply via email to