serenity-bdd / serenity-cucumber4-starter

48 stars 73 forks source link

Facing an issue with running Cucumber runner file thru CucumberWithSerenity.class #21

Closed kpkalyan closed 4 years ago

kpkalyan commented 4 years ago

import org.junit.runner.RunWith; import io.cucumber.junit.CucumberOptions; import net.serenitybdd.cucumber.CucumberWithSerenity;

@RunWith(CucumberWithSerenity.class) @CucumberOptions(features= "src/test/resources/features/Smoke.feature", tags= {"@Smoke"}, glue="com.stepdefinitions", dryRun=true, plugin= {"pretty","html:report/html-report","json:report/json-report"})

public class SampleRunner {

}

================== build.gradle ================= apply plugin: 'java' apply plugin: 'eclipse' apply plugin: 'idea' apply plugin: 'net.serenity-bdd.aggregator'

sourceCompatibility = 1.8 targetCompatibility = 1.8

repositories { // Use Maven for resolving dependencies. Also, You can declare any Jcenter/Ivy/file repository here. mavenCentral() jcenter() }

buildscript { repositories { // Use Maven for resolving dependencies. Also, You can declare any Jcenter/Ivy/file repository here. mavenLocal() jcenter() } dependencies { classpath("net.serenity-bdd:serenity-gradle-plugin:latest.release") } }

dependencies { //JUnit testImplementation 'junit:junit:4.12' testImplementation 'org.assertj:assertj-core:1.7.0' implementation 'org.slf4j:slf4j-nop:1.7.25'

//Cucumber
implementation 'io.cucumber:cucumber-core:4.8.0'
implementation 'io.cucumber:cucumber-java:4.8.0'
implementation 'io.cucumber:cucumber-jvm:4.8.0'
implementation 'io.cucumber:cucumber-junit:4.8.0'
implementation 'io.cucumber:cucumber-testng:4.8.0'
implementation 'io.cucumber:gherkin:2.12.2'
implementation 'io.cucumber:cucumber-jvm-deps:1.0.6'

//selenium
implementation 'org.seleniumhq.selenium:selenium-java:3.141.59' 

//SerenityBDD
implementation 'net.serenity-bdd:serenity-core:2.0.90'
implementation 'net.serenity-bdd:serenity-junit:2.0.90'
implementation 'net.serenity-bdd:serenity-cucumber:latest.release'
implementation 'net.serenity-bdd:serenity-rest-assured:2.0.90'

}

kpkalyan commented 4 years ago

============ Error ============= java.lang.NoClassDefFoundError: cucumber/runtime/RuntimeOptions at net.serenitybdd.cucumber.CucumberWithSerenity.getChildren(CucumberWithSerenity.java:94) at org.junit.runners.ParentRunner.getFilteredChildren(ParentRunner.java:426) at org.junit.runners.ParentRunner.getDescription(ParentRunner.java:351) at org.junit.runners.ParentRunner.run(ParentRunner.java:359) at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:110) at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58) at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38) at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:62) at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36) at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24) at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33) at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94) at com.sun.proxy.$Proxy2.processTestClass(Unknown Source) at org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:118) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36) at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24) at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:182) at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:164) at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:412) at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:56) at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.ClassNotFoundException: cucumber.runtime.RuntimeOptions at java.net.URLClassLoader.findClass(URLClassLoader.java:382) at java.lang.ClassLoader.loadClass(ClassLoader.java:418) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355) at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ... 34 more