Hello,
Mauro was right: my resource were not copied to target/test-classes. I have
now added:
<testResource>
       <directory>src/test/java</directory>
            <includes>
                <include>**/*.story</include>
          </includes>
 </testResource>

to my pom.xml and my stories are now picked up properly.
Regards,
Julien.

2012/9/30 Julien Martin <[email protected]>

> Hi Mauro and thanks for your reply,
> It is now working again. What worries me is that I am not sure what caused
> it to work again so I can't provide an explanation on this mailing list...
> I'll do as you advised if I experience other issues with the stories not
> being found.
> Regards,
> Julien.
>
>
>
> 2012/9/30 Mauro Talevi <[email protected]>
>
>>  Hi Julien,
>>
>> difficult to help you if you don't provide a self-contained project (not
>> just the config) reproducing your behaviour and provide us with infos on
>> the running env, OS, version etc ...
>>
>> OTOH, I'd say it could be that the StepFinder returns an empty list
>> because of some peculiarity in your config.
>>
>> Are you sure the story files are copied to the target/classes directory?
>> I'd put a breakpoint in storyPaths() to investigate.
>>
>> Also, depending on the version of JBehave you're using, on Windows spaces
>> in the paths could lead to story paths not being found.
>>
>> Cheers
>>
>>
>> On 30/09/2012 09:16, Julien Martin wrote:
>>
>> Hello,
>>
>> I have a configuration issue with JBehave: only BeforeStories and
>> AfterStories are run. It seems my stories (*.story) are not found.. They
>> are located in this package: *com.kadjoukor.jbehave.stories*
>>
>> I think the problem started occuring after I added the failsafe and
>> jbehave plugins in my maven config.
>>
>> Here is my java config:*
>>
>> public class KadjoukorWebStories extends JUnitStories {
>>
>>     private WebDriverProvider driverProvider = new
>> PropertyWebDriverProvider();
>>     private WebDriverSteps lifecycleSteps = new
>> PerStoriesWebDriverSteps(driverProvider); // or
>>
>>                     // PerStoryWebDriverSteps(driverProvider)
>>     private Pages pages = new Pages(driverProvider);
>>     private SeleniumContext context = new SeleniumContext();
>>     private ContextView contextView = new
>> LocalFrameContextView().sized(500, 100);
>>
>>     public KadjoukorWebStories() {
>>         // If configuring lifecycle per-stories, you need to ensure that
>> you a
>>         // same-thread executor
>>         if (lifecycleSteps instanceof PerStoriesWebDriverSteps) {
>>
>> configuredEmbedder().useExecutorService(MoreExecutors.sameThreadExecutor());
>>         }
>>     }
>>
>>     @Override
>>     public Configuration configuration() {
>>         Class<? extends Embeddable> embeddableClass = this.getClass();
>>         return new SeleniumConfiguration()
>>                 .useSeleniumContext(context)
>>                 .useWebDriverProvider(driverProvider)
>>                 .useStepMonitor(new SeleniumStepMonitor(contextView,
>> context, new SilentStepMonitor()))
>>                 .useStoryLoader(new LoadFromClasspath(embeddableClass))
>>                 .useStoryReporterBuilder(
>>                         new
>> StoryReporterBuilder().withCodeLocation(codeLocationFromClass(embeddableClass)).withDefaultFormats()
>>                                 .withFormats(CONSOLE, TXT, HTML, XML));
>>     }
>>
>>     @Override
>>     public InjectableStepsFactory stepsFactory() {
>>         Configuration configuration = configuration();
>>         return new InstanceStepsFactory(configuration, new
>> KadjoukorWebSteps(pages), lifecycleSteps, new
>> WebDriverScreenshotOnFailure(driverProvider,
>>                 configuration.storyReporterBuilder()));
>>     }
>>
>>     @Override
>>     protected List<String> storyPaths() {
>>         return new
>> StoryFinder().findPaths(codeLocationFromClass(this.getClass()).getFile(),
>> asList("**/*.story"), null);
>>     }
>>
>>     // This Embedder is used by Maven or Ant and it will override
>> anything set
>>     // in the constructor
>>     public static class SameThreadEmbedder extends Embedder {
>>         public SameThreadEmbedder() {
>>             useExecutorService(MoreExecutors.sameThreadExecutor());
>>         }
>>     }
>> }*
>>
>>
>> Here is my Maven configuration:
>>
>> *            <plugin>
>>                 <groupId>org.apache.tomcat.maven</groupId>
>>                 <artifactId>tomcat7-maven-plugin</artifactId>
>>                 <version>2.0</version>
>>                 <configuration>
>>                     <fork>true</fork>
>>                 </configuration>
>>                 <executions>
>>                     <execution>
>>                         <id>start-tomcat</id>
>>                         <phase>pre-integration-test</phase>
>>                         <goals>
>>                             <goal>run</goal>
>>                         </goals>
>>                     </execution>
>>                     <execution>
>>                         <id>stop-tomcat</id>
>>                         <phase>post-integration-test</phase>
>>                         <goals>
>>                             <goal>shutdown</goal>
>>                         </goals>
>>                     </execution>
>>                 </executions>
>>             </plugin>
>>             <plugin>
>>                 <groupId>org.jbehave</groupId>
>>                 <artifactId>jbehave-maven-plugin</artifactId>
>>                 <version>3.6.9</version>
>>                 <executions>
>>                     <execution>
>>                         <id>run-stories</id>
>>                         <phase>integration-test</phase>
>>                         <configuration>
>>                             <includes>
>>                                 <include>**/*Stories.java</include>
>>                             </includes>
>>
>> <executorsClass>org.jbehave.core.embedder.executors.SameThreadExecutors</executorsClass>
>>                             <scope>test</scope>
>>                             <systemProperties>
>>                                 <property>
>>                                     <name>java.awt.headless</name>
>>                                     <value>false</value>
>>                                 </property>
>>                             </systemProperties>
>>
>> <ignoreFailureInStories>false</ignoreFailureInStories>
>>
>> <ignoreFailureInView>false</ignoreFailureInView>
>>                         </configuration>
>>                         <goals>
>>                             <goal>run-stories-as-embeddables</goal>
>>                         </goals>
>>                     </execution>
>>                 </executions>
>>                 <dependencies>
>>                     <dependency>
>>                         <groupId>log4j</groupId>
>>                         <artifactId>log4j</artifactId>
>>                         <version>1.2.16</version>
>>                     </dependency>
>>                     <dependency>
>>                         <groupId>com.google.guava</groupId>
>>                         <artifactId>guava</artifactId>
>>                         <version>11.0.1</version>
>>                     </dependency>
>>                     <dependency>
>>                         <groupId>org.jbehave.web</groupId>
>>                         <artifactId>jbehave-web-selenium</artifactId>
>>                         <version>3.5.4</version>
>>                     </dependency>
>>                 </dependencies>
>>             </plugin>
>> *
>>
>> Can anyone please help?
>> Regards,
>> Julien.
>>
>>
>>
>

Reply via email to