jbehave をジェンキンスと統合する必要があります。しかし、これを行う方法がわかりません。Jenkins でタスクを作成する必要があることがわかりましたが、このタスクで jbehave をどこに配線すればよいかわかりません。
誰か助けてくれませんか?
ありがとう、
サラン
jbehave をジェンキンスと統合する必要があります。しかし、これを行う方法がわかりません。Jenkins でタスクを作成する必要があることがわかりましたが、このタスクで jbehave をどこに配線すればよいかわかりません。
誰か助けてくれませんか?
ありがとう、
サラン
JBehaveがMavenと統合されていると思いますよね?シンプルビルド環境は次のように設定できます。
JenkinsでJBehaveテスト出力が適切にレンダリングされることを確認したい場合は、次の手順に従ってJenkins /XUnitプラグインを構成する必要があります。http://jbehave.org/reference/stable/hudson-plugin.html
また、プラグインを使用するには、StoryReporterBuilderでXML出力形式を使用するようにプロジェクトが構成されていることを確認する必要があります(上記の手順には記載されていません)。
詳細については、以下をご覧ください。
コメントによると、Maven プラグインを使用するときに Jenkins 経由で実行するストーリーを指定したいと考えています。1 つの方法を次に示します。
StoryFinderのサブクラスを作成し、それをMaven 構成storyFinderClass
のプロパティとして設定します。Jenkins コマンドライン ランチャーでは、StoryFinder から読み取ることができるシステム プロパティとしてストーリーを渡すことができます。-D
コマンドライン
mvn ... -Dcom.sarang.stories="foo.story,bar.story"
メイヴン
<plugin>
<groupId>org.jbehave</groupId>
<artifactId>jbehave-maven-plugin</artifactId>
<version>[version]</version>
<executions>
<execution>
<id>run-stories-as-embeddables</id>
<phase>integration-test</phase>
<configuration>
...
<systemProperties>
<property>
<name>com.sarang.stories</name>
<value>${com.sarang.stories}</value>
</property>
</systemProperties>
<storyFinderClass>com.sarang.MyStoryFinder</storyFinderClass>
</configuration>
<goals>
<goal>run-stories-as-embeddables</goal>
...
</goals>
</execution>
</executions>
</plugin>
ストーリーファインダー
package com.sarang;
import org.jbehave.core.io.StoryFinder;
import java.util.*;
public class MyStoryFinder extends StoryFinder {
@Override
protected List<String> scan(String basedir, List<String> includes,
List<String> excludes) {
//List<String> defaultStories = super.scan(basedir, includes, excludes);
String myStories = System.getProperty("com.sarang.stories");
return Arrays.asList(myStories.split(","));
}
}