2013-09-30 5 views
0

어떤 이유로 든 하나의 포맷터를 사용할 때만 코드가 실행됩니다. 나는 또 다른 추가하면오이 보고서는 하나 이상의 포맷터를 사용할 수 없습니까?

@RunWith(Cucumber.class) 
@Cucumber.Options(features={"src/test/resources/cucumber"}, glue={"cucumber.com.zzz.yyy.steps"}, format={"html:target/test-reports"}) 
public class RunCucumberTest { 

} 

가 :

format={"pretty","html:target/test-reports"} 

가 나는 경우 IndexOutOfBoundsException 얻을 : 내가 추가하는 경우

java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 
    at java.util.ArrayList.rangeCheck(ArrayList.java:604) 
    at java.util.ArrayList.get(ArrayList.java:382) 
    at gherkin.formatter.PrettyFormatter.indentedLocation(PrettyFormatter.java:142) 
    at gherkin.formatter.PrettyFormatter.printStep(PrettyFormatter.java:255) 
    at gherkin.formatter.PrettyFormatter.match(PrettyFormatter.java:179) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 

을 다른 :

나는 다른 경우 IndexOutOfBoundsException이 시간을 얻을
format={"pretty","html:target/test-reports", "json:target/test-reports/cucumber.json"} 

= -1 :

java.lang.ArrayIndexOutOfBoundsException: -1 
    at java.util.ArrayList.elementData(ArrayList.java:371) 
    at java.util.ArrayList.get(ArrayList.java:384) 
    at gherkin.formatter.JSONFormatter.getFeatureElement(JSONFormatter.java:199) 
    at gherkin.formatter.JSONFormatter.addHook(JSONFormatter.java:156) 
    at gherkin.formatter.JSONFormatter.before(JSONFormatter.java:147) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at cucumber.runtime.Utils$1.call(Utils.java:44) 
    at cucumber.runtime.Timeout.timeout(Timeout.java:12) 
    at cucumber.runtime.Utils.invoke(Utils.java:40) 
    at cucumber.runtime.RuntimeOptions$2.invoke(RuntimeOptions.java:138) 
    at com.sun.proxy.$Proxy12.before(Unknown Source) 
    at cucumber.runtime.junit.JUnitReporter.before(JUnitReporter.java:129) 
    at cucumber.runtime.Runtime.runHookIfTagsMatch(Runtime.java:208) 
    at cucumber.runtime.Runtime.runHooks(Runtime.java:185) 
    at cucumber.runtime.Runtime.runBeforeHooks(Runtime.java:175) 
    at cucumber.runtime.model.CucumberScenario.run(CucumberScenario.java:32) 
    at cucumber.runtime.junit.ExecutionUnitRunner.run(ExecutionUnitRunner.java:83) 
    at cucumber.runtime.junit.FeatureRunner.runChild(FeatureRunner.java:63) 
    at cucumber.runtime.junit.FeatureRunner.runChild(FeatureRunner.java:18) 
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) 
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) 
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) 
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) 
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) 
    at org.junit.runners.ParentRunner.run(ParentRunner.java:309) 
    at cucumber.runtime.junit.FeatureRunner.run(FeatureRunner.java:70) 
    at cucumber.api.junit.Cucumber.runChild(Cucumber.java:77) 
    at cucumber.api.junit.Cucumber.runChild(Cucumber.java:37) 
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) 
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) 
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) 
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) 
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) 
    at org.junit.runners.ParentRunner.run(ParentRunner.java:309) 
    at cucumber.api.junit.Cucumber.run(Cucumber.java:82) 

사람이 나에게 무슨 일이 일어나고 있는지 알아낼 수 있습니다 !!?

버전 :

<dependency> 
    <groupId>junit</groupId> 
    <artifactId>junit</artifactId> 
    <version>4.11</version> 
    <scope>test</scope> 
    <optional>true</optional> 
</dependency> 
<dependency> 
    <groupId>info.cukes</groupId> 
    <artifactId>cucumber-jvm-deps</artifactId> 
    <scope>test</scope> 
    <version>1.0.3</version> 
</dependency> 
<dependency> 
    <groupId>info.cukes</groupId> 
    <artifactId>cucumber-java</artifactId> 
    <scope>test</scope> 
    <version>1.1.3</version> 
</dependency> 
<dependency> 
    <groupId>info.cukes</groupId> 
    <artifactId>cucumber-junit</artifactId> 
    <scope>test</scope> 
    <version>1.1.3</version> 
</dependency> 

답변

0

추가 된 JVM 의존성 :

<dependency> 
    <groupId>info.cukes</groupId> 
    <artifactId>cucumber-jvm</artifactId> 
    <version>1.1.5</version> 
    <type>pom</type> 
</dependency> 

그리고 모든 것이 제대로 실행.

관련 문제