Hi,
I noticed something weird.
When I execute multiple story files in multiple threads, then some of the
output files are empty.
When I execute multiple story files in a single thread, then all the output
files are populated.
Some code:
pom.xml (to define the threads)
<plugin>
<groupId>org.jbehave</groupId>
<artifactId>jbehave-maven-plugin</artifactId>
<version>4.0-beta-1</version>
<executions>
<execution>
<id>run-stories-as-embeddables</id>
<phase>integration-test</phase>
<configuration>
<includes>
<include>${embeddables}</include>
</includes>
<ignoreFailureInStories>false</ignoreFailureInStories>
<ignoreFailureInView>true</ignoreFailureInView>
<metaFilters>
<metaFilter>+group ${group}</metaFilter>
</metaFilters>
<storyTimeoutInSecs>9000</storyTimeoutInSecs>
<threads>1</threads> //or 2
</configuration>
<goals>
<goal>run-stories-as-embeddables</goal>
<goal>unpack-view-resources</goal>
</goals>
</execution>
<execution>
<id>unpack-view-resources</id>
<phase>process-resources</phase>
<goals>
<goal>unpack-view-resources</goal>
</goals>
<configuration>
<viewDirectory>target/jbehave/view</viewDirectory>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
</dependencies>
</plugin>
my reporterconfig:
.useStoryReporterBuilder(
new StoryReporterBuilder()
.withCodeLocation(
CodeLocations
.codeLocationFromClass(embeddableClass))
.withDefaultFormats()
.withFormats(HTML, XML))
.useParameterConverters(parameterConverters);
Has anybody noticed this before?
Do I need to configure something extra when using multiple threads? (in regards
to the reporting?)
I hope to get this sorted soon, as this gives problems on our jenkins machine
(we have flaky test outputs)
Thanks in advance,
Roy