Selenium webdriver 如何使用io.cucumber运行cucumber jvm报告 我用io.cucumber更新了我的POM.xml。我的POM如下: 获取控制台错误,如下所示 [TestNG]正在运行: C:\Users\nikita\u khanna01\AppData

Selenium webdriver 如何使用io.cucumber运行cucumber jvm报告 我用io.cucumber更新了我的POM.xml。我的POM如下: 获取控制台错误,如下所示 [TestNG]正在运行: C:\Users\nikita\u khanna01\AppData,selenium-webdriver,cucumber,Selenium Webdriver,Cucumber,如何使用io.cucumber运行cucumber jvm报告 我用io.cucumber更新了我的POM.xml。我的POM如下: 获取控制台错误,如下所示 [TestNG]正在运行: C:\Users\nikita\u khanna01\AppData\Local\Temp\testng-eclipse-2024013776\testng-customsuite.xml [Utils]正在尝试创建D:\Form10E\u GH\test output\Default suite\Defaul

如何使用io.cucumber运行cucumber jvm报告 我用io.cucumber更新了我的POM.xml。我的POM如下: 获取控制台错误,如下所示
[TestNG]正在运行:
C:\Users\nikita\u khanna01\AppData\Local\Temp\testng-eclipse-2024013776\testng-customsuite.xml
[Utils]正在尝试创建D:\Form10E\u GH\test output\Default suite\Default test.xml
[Utils]目录D:\Form10E\u GH\test output\Default suite存在:true
配置失败:@BeforeClass前提条件
java.lang.NoSuchMethodError:cucumber/runtime/BackendModuleBackendSupplier(Lcucumber/runtime/io/ResourceLoader;Lcucumber/runtime/ClassFinder;Lcucumber/runtime/RuntimeOptions;)V(从文件加载:/D:/maven_repo/io/cucumber/cumber-core/4.3.1/cumber-core-4.3.1.jar由sun.misc.launch.Launcher$AppClassLoader@fac6da36)从类cucumber.api.testng.testngcucucumberrunner调用(由sun.misc.Launcher从文件:/D:/maven_repo/io/cucumber/cucucumber testng/4.2.0/cucucucumber-testng-4.2.0.jar加载)$AppClassLoader@fac6da36).
位于cucumber.api.testng.TestNGCucumberRunner。(TestNGCucumberRunner.java:54)
在testRunner.testRunner.predition(testRunner.java:50)处
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:498)
位于org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:100)
位于org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:515)
位于org.testng.internal.Invoker.invokeConfigulations(Invoker.java:216)
位于org.testng.internal.Invoker.invokeConfigulations(Invoker.java:143)
位于org.testng.internal.TestMethodWorker.invokeBeforeClassMethods(TestMethodWorker.java:169)
位于org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108)
位于org.testng.TestRunner.privateRun(TestRunner.java:753)
位于org.testng.TestRunner.run(TestRunner.java:607)
位于org.testng.SuiteRunner.runTest(SuiteRunner.java:368)
在org.testng.SuiteRunner.runSequential上(SuiteRunner.java:363)
位于org.testng.SuiteRunner.privateRun(SuiteRunner.java:321)
运行(SuiteRunner.java:270)
位于org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
位于org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
在org.testng.testng.runSuitesSequentially上(testng.java:1284)
位于org.testng.testng.runSuitesLocally(testng.java:1209)
位于org.testng.testng.runSuites(testng.java:1124)
位于org.testng.testng.run(testng.java:1096)
位于org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:132)
位于org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:236)
位于org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:81)
配置失败:@AfterClass tearDownClass
java.lang.NullPointerException
位于testRunner.testRunner.tearDownClass(testRunner.java:92)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:498)
位于org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:100)
位于org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:515)
位于org.testng.internal.Invoker.invokeConfigulations(Invoker.java:216)
位于org.testng.internal.Invoker.invokeConfigulations(Invoker.java:143)
位于org.testng.internal.TestMethodWorker.invokeAfterClassMethods(TestMethodWorker.java:217)
位于org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:115)
位于org.testng.TestRunner.privateRun(TestRunner.java:753)
位于org.testng.TestRunner.run(TestRunner.java:607)
位于org.testng.SuiteRunner.runTest(SuiteRunner.java:368)
在org.testng.SuiteRunner.runSequential上(SuiteRunner.java:363)
位于org.testng.SuiteRunner.privateRun(SuiteRunner.java:321)
运行(SuiteRunner.java:270)
位于org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
位于org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
在org.testng.testng.runSuitesSequentially上(testng.java:1284)
位于org.testng.testng.runSuitesLocally(testng.java:1209)
位于org.testng.testng.runSuites(testng.java:1124)
位于org.testng.testng.run(testng.java:1096)
位于org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:132)
位于org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:236)
位于org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:81)
跳过:场景
登录
java.lang.RuntimeException:java.lang.NullPointerException
位于org.testng.internal.MethodInvocationHelper.invokeMethodNoCheckedException(MethodInvocationHelper.java:45)
位于org.testng.internal.MethodInvocationHelper.invokeDataProvider(MethodInvocationHelper.java:110)
位于org.testng.internal.Parameters.handleParameters(Parameters.java:436)
位于org.testng.internal.Invoker.handleParameters(Invoker.java:1253)
位于org.testng.internal.Invoker.createParameters(Invoker.java:980)
位于org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1070)
位于org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129)
位于org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112)
位于org.testng.TestRunner.privateRun(TestRunner.java:753)
位于org.testng.TestRunner.run(TestRunner.java:607)
位于org.testng.SuiteRunner.runTest(SuiteRunner.java:368)
在org.testng.SuiteRunner.runSequential上(SuiteRunner.java:363)
位于org.testng.SuiteRunner.privateRun(SuiteRunner.java:321)
运行(SuiteRunner.java:270)
位于org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
在org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86
    <project xmlns="http://maven.apache.org/POM/4.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>


         <groupId>ToolsQA</groupId>
        <artifactId>CucumberFramework</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <packaging>jar</packaging>

        <name>CucumberFramework</name>
        <url>http://maven.apache.org</url>

        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        </properties>

        <dependencies>
        <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-java</artifactId>
        <version>4.3.1</version>
    </dependency>

    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-junit</artifactId>
        <version>4.3.1</version>
        <scope>test</scope>
    </dependency>

    <!-- https://mvnrepository.com/artifact/junit/junit
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
        <scope>test</scope>
    </dependency>   -->
    <dependency>
                <groupId>org.seleniumhq.selenium</groupId>
                <artifactId>selenium-java</artifactId>
                <version>3.14.0</version>
            </dependency>

            <dependency>
                <groupId>org.testng</groupId>
                <artifactId>testng</artifactId>
                <version>6.8</version>
            </dependency>
            <!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-testng -->
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-testng</artifactId>
        <version>4.2.0</version>
    </dependency>
     <dependency>
                    <groupId>io.cucumber</groupId>
                    <artifactId>cucumber-picocontainer</artifactId>
                    <version>4.3.1</version>
                    <scope>test</scope>
                </dependency>

            <dependency>
                    <groupId>io.cucumber</groupId>
                    <artifactId>cucumber-jvm-deps</artifactId>
                    <version>1.0.6</version>
                    <scope>provided</scope>
                </dependency>
        <!--    <dependency>
                <groupId>com.aventstack</groupId>
                <artifactId>extentreports</artifactId>
                <version>3.1.2</version>
            </dependency>  -->
            <dependency>
                <groupId>com.vimalselvam</groupId>
                <artifactId>cucumber-extentsreport</artifactId>
                <version>3.0.2</version>
            </dependency>
            <dependency>
                <groupId>com.googlecode.json-simple</groupId>
                <artifactId>json-simple</artifactId>
                <version>1.1.1</version>
            </dependency>
            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-io</artifactId>
                <version>1.3.2</version>
            </dependency>


    <!-- https://mvnrepository.com/artifact/io.cucumber/datatable-dependencies -->
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>datatable-dependencies</artifactId>
        <version>1.1.12</version>
    </dependency>

    <!--  https://mvnrepository.com/artifact/io.cucumber/datatable-->
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>datatable</artifactId>
        <version>1.0.3</version>
    </dependency>

    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-core</artifactId>
        <version>4.3.1</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/io.cucumber/gherkin -->
    <!--<dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>gherkin</artifactId>
        <version>5.1.0</version>
    </dependency>  -->
     <!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-html -->
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-html</artifactId>
        <version>0.2.7</version>
    </dependency>
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>gherkin</artifactId>
        <version>2.7.3</version>
    </dependency>
    <dependency>
      <groupId>com.aventstack</groupId>
    <artifactId>extentreports-cucumber4-adapter</artifactId>
    <version>1.0.7</version>
    </dependency>
    <dependency>
        <groupId>com.aventstack</groupId>
        <artifactId>extentreports</artifactId>
        <version>3.1.5</version>
    </dependency> 
        </dependencies>

        <build>
        <plugins>
        <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.7.0</version>
                    <configuration>
                    <testFailureIgnore>true</testFailureIgnore>
                        <source>1.8</source>
                        <target>1.8</target>
                    </configuration>
                </plugin>
                <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-surefire-plugin</artifactId>
                            <version>2.19.1</version>
                            <configuration>
                                <testFailureIgnore>true</testFailureIgnore> 

                            </configuration>
                        </plugin>
                        <plugin>
                            <groupId>net.masterthought</groupId>
                            <artifactId>maven-cucumber-reporting</artifactId>
                            <version>3.15.0</version>
                            <executions>
                                <execution>
                                    <id>execution</id>
                                    <phase>verify</phase>
                                    <goals>
                                        <goal>generate</goal>
                                    </goals>
                                    <configuration>
                                        <projectName>cucumber-jvm-example</projectName>
                                        <outputDirectory>${project.build.directory}/Cucumber-JVM-report</outputDirectory>
                                        <cucumberOutput>${project.build.directory}/cucumber.json</cucumberOutput>
                                         <!-- <inputDirectory>${project.build.directory}/cucumber-reports/cucumber-json</inputDirectory> -->
                                        <jsonFiles>
                        <!-- supports wildcard or name pattern -->
                        <param>**/*.json</param>
                    </jsonFiles>
                    <skippedFails>true</skippedFails>
                    <enableFlashCharts>true</enableFlashCharts>
                    <buildNumber>10.2.1</buildNumber>
                                        <checkBuildResult>true</checkBuildResult>
                                    </configuration>
                                </execution>
                            </executions>
                        </plugin>
                    </plugins>
                </build>

    </project>
package testRunner;

import org.junit.runner.RunWith;



import org.openqa.selenium.WebDriver;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import cucumber.api.CucumberOptions;
import cucumber.api.Scenario;
//import cucumber.api.java.Before;
import cucumber.api.junit.Cucumber;
import cucumber.api.testng.AbstractTestNGCucumberTests;
import cucumber.api.testng.CucumberFeatureWrapper;
import cucumber.api.testng.PickleEventWrapper;
//import cucumber.api.testng.PickleEventWrapper;
import cucumber.api.testng.TestNGCucumberRunner;
import com.aventstack.extentreports.ExtentTest;
import com.cucumber.listener.Reporter;

@RunWith(Cucumber.class)
@CucumberOptions(plugin = {
        "com.aventstack.extentreports.cucumber.adapter.ExtentCucumberAdapter:target/cucumber-reports/report.html","html:target/Cucumber-JVM-report","json:target/cucumber-reports/cucumber.json"}, features = "src/test/java/Features", monochrome = true, tags = {
                "@US_IEITF-6646_AttachDocAndPreviewandSubmit,@US_IEITF-6441_Exit" }, glue = "stepDef", strict = true)
public class TestRunner {
//extends AbstractTestNGCucumberTestsests 
    public static WebDriver driver;
    private TestNGCucumberRunner testRunner;
    public ExtentTest log = null;
    private Scenario scenario;

//  @BeforeClass
//  public void before(Scenario scenario) {
//        this.scenario = scenario;
//  }

    /*@BeforeClass
    public void setUP() {
        System.setProperty("webdriver.chrome.driver", "chromedriver.exe");
        testRunner = new TestNGCucumberRunner(TestRunner.class);

    }
    */
    @BeforeClass(alwaysRun = true)
    public void precondition() {
        System.setProperty("webdriver.chrome.driver", "chromedriver.exe");
        testRunner = new TestNGCucumberRunner(this.getClass());

    }


    /*@Test(description = "login", dataProvider = "features")
    public void login(CucumberFeatureWrapper cFeature) {
        testRunner.runCucumber(cFeature.getCucumberFeature());

    }
    */
    @Test(groups = "cucumber scenarios", description = "login", dataProvider = "scenarios")
            public void scenario(PickleEventWrapper pickleEvent, CucumberFeatureWrapper 
            cucumberFeature) throws Throwable{
        testRunner.runScenario(pickleEvent.getPickleEvent());
            }
    /*@DataProvider(name = "features")
    public Object[][] getFeatures() {
        return testRunner.provideFeatures();
    }*/

    @DataProvider(name = "scenarios")
    public Object[][] scenarios() {
        return testRunner.provideScenarios();
    }


    /*@AfterClass
    public void tearDown() {

        testRunner.finish();

        Reporter.loadXMLConfig("./extent-config.xml");
        Reporter.setSystemInfo("User Name", System.getProperty("user.name"));
        Reporter.setSystemInfo("Time Zone", System.getProperty("user.timezone"));
        Reporter.setSystemInfo("Machine", "Windows 10" + "64 Bit");
        Reporter.setSystemInfo("Selenium", "3.7.0");
        Reporter.setSystemInfo("Maven", "3.5.2");
        Reporter.setSystemInfo("Java Version", "1.8.0_151");
    }*/
    @AfterClass(alwaysRun = true)
    public void tearDownClass() throws Exception {
        testRunner.finish();
        Reporter.loadXMLConfig("./extent-config.xml");
        Reporter.setSystemInfo("User Name", System.getProperty("user.name"));
        Reporter.setSystemInfo("Time Zone", System.getProperty("user.timezone"));
        Reporter.setSystemInfo("Machine", "Windows 10" + "64 Bit");
        Reporter.setSystemInfo("Selenium", "3.7.0");
        Reporter.setSystemInfo("Maven", "3.5.2");
        Reporter.setSystemInfo("Java Version", "1.8.0_151");
    }
}
[TestNG] Running:
  C:\Users\nikita_khanna01\AppData\Local\Temp\testng-eclipse-2024013776\testng-customsuite.xml

[Utils] Attempting to create D:\Form10E_GH\test-output\Default suite\Default test.xml
[Utils]   Directory D:\Form10E_GH\test-output\Default suite exists: true
FAILED CONFIGURATION: @BeforeClass precondition
java.lang.NoSuchMethodError: cucumber/runtime/BackendModuleBackendSupplier.<init>(Lcucumber/runtime/io/ResourceLoader;Lcucumber/runtime/ClassFinder;Lcucumber/runtime/RuntimeOptions;)V (loaded from file:/D:/maven_repo/io/cucumber/cucumber-core/4.3.1/cucumber-core-4.3.1.jar by sun.misc.Launcher$AppClassLoader@fac6da36) called from class cucumber.api.testng.TestNGCucumberRunner (loaded from file:/D:/maven_repo/io/cucumber/cucumber-testng/4.2.0/cucumber-testng-4.2.0.jar by sun.misc.Launcher$AppClassLoader@fac6da36).
    at cucumber.api.testng.TestNGCucumberRunner.<init>(TestNGCucumberRunner.java:54)
    at testRunner.TestRunner.precondition(TestRunner.java:50)
    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.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:100)
    at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:515)
    at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:216)
    at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:143)
    at org.testng.internal.TestMethodWorker.invokeBeforeClassMethods(TestMethodWorker.java:169)
    at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:108)
    at org.testng.TestRunner.privateRun(TestRunner.java:753)
    at org.testng.TestRunner.run(TestRunner.java:607)
    at org.testng.SuiteRunner.runTest(SuiteRunner.java:368)
    at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:363)
    at org.testng.SuiteRunner.privateRun(SuiteRunner.java:321)
    at org.testng.SuiteRunner.run(SuiteRunner.java:270)
    at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
    at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
    at org.testng.TestNG.runSuitesSequentially(TestNG.java:1284)
    at org.testng.TestNG.runSuitesLocally(TestNG.java:1209)
    at org.testng.TestNG.runSuites(TestNG.java:1124)
    at org.testng.TestNG.run(TestNG.java:1096)
    at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:132)
    at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:236)
    at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:81)

FAILED CONFIGURATION: @AfterClass tearDownClass
java.lang.NullPointerException
    at testRunner.TestRunner.tearDownClass(TestRunner.java:92)
    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.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:100)
    at org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:515)
    at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:216)
    at org.testng.internal.Invoker.invokeConfigurations(Invoker.java:143)
    at org.testng.internal.TestMethodWorker.invokeAfterClassMethods(TestMethodWorker.java:217)
    at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:115)
    at org.testng.TestRunner.privateRun(TestRunner.java:753)
    at org.testng.TestRunner.run(TestRunner.java:607)
    at org.testng.SuiteRunner.runTest(SuiteRunner.java:368)
    at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:363)
    at org.testng.SuiteRunner.privateRun(SuiteRunner.java:321)
    at org.testng.SuiteRunner.run(SuiteRunner.java:270)
    at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
    at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
    at org.testng.TestNG.runSuitesSequentially(TestNG.java:1284)
    at org.testng.TestNG.runSuitesLocally(TestNG.java:1209)
    at org.testng.TestNG.runSuites(TestNG.java:1124)
    at org.testng.TestNG.run(TestNG.java:1096)
    at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:132)
    at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:236)
    at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:81)

SKIPPED: scenario
         login
java.lang.RuntimeException: java.lang.NullPointerException
    at org.testng.internal.MethodInvocationHelper.invokeMethodNoCheckedException(MethodInvocationHelper.java:45)
    at org.testng.internal.MethodInvocationHelper.invokeDataProvider(MethodInvocationHelper.java:110)
    at org.testng.internal.Parameters.handleParameters(Parameters.java:436)
    at org.testng.internal.Invoker.handleParameters(Invoker.java:1253)
    at org.testng.internal.Invoker.createParameters(Invoker.java:980)
    at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1070)
    at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129)
    at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112)
    at org.testng.TestRunner.privateRun(TestRunner.java:753)
    at org.testng.TestRunner.run(TestRunner.java:607)
    at org.testng.SuiteRunner.runTest(SuiteRunner.java:368)
    at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:363)
    at org.testng.SuiteRunner.privateRun(SuiteRunner.java:321)
    at org.testng.SuiteRunner.run(SuiteRunner.java:270)
    at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
    at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
    at org.testng.TestNG.runSuitesSequentially(TestNG.java:1284)
    at org.testng.TestNG.runSuitesLocally(TestNG.java:1209)
    at org.testng.TestNG.runSuites(TestNG.java:1124)
    at org.testng.TestNG.run(TestNG.java:1096)
    at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:132)
    at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:236)
    at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:81)
Caused by: java.lang.NullPointerException
    at testRunner.TestRunner.scenarios(TestRunner.java:73)
    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.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:100)
    at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:51)
    at org.testng.internal.MethodInvocationHelper.invokeMethodNoCheckedException(MethodInvocationHelper.java:41)
    ... 22 more


===============================================
    Default test
    Tests run: 1, Failures: 0, Skips: 1
    Configuration Failures: 2, Skips: 0
===============================================


===============================================
Default suite
Total tests run: 1, Failures: 0, Skips: 1
Configuration Failures: 2, Skips: 0
===============================================

[TestNG] Time taken by org.testng.reporters.XMLReporter@4a44115: 20 ms
[Utils] Attempting to create D:\Form10E_GH\test-output\testng-failed.xml
[Utils]   Directory D:\Form10E_GH\test-output exists: true
[Utils] Attempting to create D:\Form10E_GH\test-output\Default suite\testng-failed.xml
[Utils]   Directory D:\Form10E_GH\test-output\Default suite exists: true
[TestNG] Time taken by [FailedReporter passed=0 failed=0 skipped=0]: 15 ms
[Utils] Attempting to create D:\Form10E_GH\test-output\junitreports\TEST-testRunner.TestRunner.xml
[Utils]   Directory D:\Form10E_GH\test-output\junitreports exists: true
[TestNG] Time taken by org.testng.reporters.JUnitReportReporter@1ddcb11b: 10 ms
[Utils] Attempting to create D:\Form10E_GH\test-output\old\Default suite\toc.html
[Utils]   Directory D:\Form10E_GH\test-output\old\Default suite exists: true
[Utils] Attempting to create D:\Form10E_GH\test-output\old\Default suite\Default test.properties
[Utils]   Directory D:\Form10E_GH\test-output\old\Default suite exists: true
[Utils] Attempting to create D:\Form10E_GH\test-output\old\Default suite\index.html
[Utils]   Directory D:\Form10E_GH\test-output\old\Default suite exists: true
[Utils] Attempting to create D:\Form10E_GH\test-output\old\Default suite\main.html
[Utils]   Directory D:\Form10E_GH\test-output\old\Default suite exists: true
[Utils] Attempting to create D:\Form10E_GH\test-output\old\Default suite\groups.html
[Utils]   Directory D:\Form10E_GH\test-output\old\Default suite exists: true
[Utils] Attempting to create D:\Form10E_GH\test-output\old\Default suite\classes.html
[Utils]   Directory D:\Form10E_GH\test-output\old\Default suite exists: true
[Utils] Attempting to create D:\Form10E_GH\test-output\old\Default suite\reporter-output.html
[Utils]   Directory D:\Form10E_GH\test-output\old\Default suite exists: true
[Utils] Attempting to create D:\Form10E_GH\test-output\old\Default suite\methods-not-run.html
[Utils]   Directory D:\Form10E_GH\test-output\old\Default suite exists: true
[Utils] Attempting to create D:\Form10E_GH\test-output\old\Default suite\testng.xml.html
[Utils]   Directory D:\Form10E_GH\test-output\old\Default suite exists: true
[Utils] Attempting to create D:\Form10E_GH\test-output\old\index.html
[Utils]   Directory D:\Form10E_GH\test-output\old exists: true
[TestNG] Time taken by org.testng.reporters.SuiteHTMLReporter@9ad48bdc: 44 ms
[TestNG] Time taken by org.testng.reporters.EmailableReporter2@cb0ee652: 16 ms
[TestNG] Time taken by org.testng.reporters.jq.Main@5d5ba3a5: 235 ms

please check above code and let me know what I am doing wrong here
<dependency>
    <groupId>io.cucumber</groupId>
    <artifactId>cucumber-jvm-deps</artifactId>
    <version>1.0.6</version>
    <scope>provided</scope>
</dependency>
<!--  https://mvnrepository.com/artifact/io.cucumber/datatable-->
<dependency>
    <groupId>io.cucumber</groupId>
    <artifactId>datatable</artifactId>
    <version>1.0.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.cucumber/gherkin -->
<!--<dependency>
    <groupId>io.cucumber</groupId>
    <artifactId>gherkin</artifactId>
    <version>5.1.0</version>
</dependency>  -->
 <!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-html -->
<dependency>
    <groupId>io.cucumber</groupId>
    <artifactId>cucumber-html</artifactId>
    <version>0.2.7</version>
</dependency>
<dependency>
    <groupId>info.cukes</groupId>
    <artifactId>gherkin</artifactId>
    <version>2.7.3</version>
</dependency>