title: Some cucumber methods do not work correctly (Cucumber Feature Wrapper)
body: <p>I have a question about Cucumber library, I was taking a course of selenium with cucumber and testNg, but I have run into some problems because some methods no longer exist</p>
  <p>For Example:</p>
  <ul>
  <li>I cant used &quot;CucumberFeatureWrapper&quot; what could be the relative to this? <strong>Image:</strong> <a href="https://i.stack.imgur.com/3JMcD.png" rel="nofollow noreferrer">https://i.stack.imgur.com/3JMcD.png</a></li>
  <li>The same way happens when i need to used .provideFeatures(); in testNgCucumberRunner.provideFeatures <strong>Image:</strong> <a href="https://i.stack.imgur.com/L76xQ.png" rel="nofollow noreferrer">https://i.stack.imgur.com/L76xQ.png</a></li>
  </ul>
  <p>POM:</p>
  <pre><code>e&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
  &lt;project xmlns=&quot;http://maven.apache.org/POM/4.0.0&quot;
       xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
       xsi:schemaLocation=&quot;http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd&quot;&gt;
  &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;
  
  &lt;groupId&gt;groupId&lt;/groupId&gt;
  &lt;artifactId&gt;CRMFramework&lt;/artifactId&gt;
  &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
  
  &lt;build&gt;
      &lt;plugins&gt;
          &lt;plugin&gt;
              &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
              &lt;artifactId&gt;maven-compiler-plugin&lt;/artifactId&gt;
              &lt;version&gt;3.8.1&lt;/version&gt;
              &lt;configuration&gt;
                  &lt;source&gt;10&lt;/source&gt;
                  &lt;target&gt;10&lt;/target&gt;
              &lt;/configuration&gt;
          &lt;/plugin&gt;
          &lt;plugin&gt;
              &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
              &lt;artifactId&gt;maven-surefire-plugin&lt;/artifactId&gt;
              &lt;version&gt;3.0.0-M5&lt;/version&gt;
              &lt;configuration&gt;
                  &lt;testFailureIgnore&gt;true&lt;/testFailureIgnore&gt;
                  &lt;suiteXmlFiles&gt;
                      &lt;suiteXmlFile&gt;src/test/java/TestNg.xml&lt;/suiteXmlFile&gt;
                  &lt;/suiteXmlFiles&gt;
  
                  &lt;testFailureIgnore&gt;true&lt;/testFailureIgnore&gt;
              &lt;/configuration&gt;
          &lt;/plugin&gt;
          &lt;plugin&gt;
              &lt;groupId&gt;net.masterthought&lt;/groupId&gt;
              &lt;artifactId&gt;maven-cucumber-reporting&lt;/artifactId&gt;
              &lt;version&gt;5.4.0&lt;/version&gt;
              &lt;executions&gt;
                  &lt;execution&gt;
                      &lt;id&gt;execution&lt;/id&gt;
                      &lt;phase&gt;verify&lt;/phase&gt;
                      &lt;goals&gt;
                          &lt;goal&gt;generate&lt;/goal&gt;
                      &lt;/goals&gt;
                      &lt;configuration&gt;
                          &lt;projectName&gt;ExecuteAutomation&lt;/projectName&gt;
                          &lt;!-- output directory for the generated report --&gt;
                          &lt;outputDirectory&gt;${project.build.directory}/cucumber-reports&lt;/outputDirectory&gt;
                          &lt;inputDirectory&gt;${project.build.directory}/cucumber-json-report.json&lt;/inputDirectory&gt;
                          &lt;jsonFiles&gt;
                              &lt;!-- supports wildcard or name pattern --&gt;
                              &lt;param&gt;**/*.json&lt;/param&gt;
                          &lt;/jsonFiles&gt;
                          &lt;mergeFeaturesWithRetest&gt;true&lt;/mergeFeaturesWithRetest&gt;
                          &lt;mergeFeaturesById&gt;true&lt;/mergeFeaturesById&gt;
                          &lt;checkBuildResult&gt;false&lt;/checkBuildResult&gt;
                          &lt;skipEmptyJSONFiles&gt;true&lt;/skipEmptyJSONFiles&gt;
                      &lt;/configuration&gt;
                  &lt;/execution&gt;
              &lt;/executions&gt;
          &lt;/plugin&gt;
      &lt;/plugins&gt;
  &lt;/build&gt;
  
  
  &lt;properties&gt;
      &lt;maven.compiler.source&gt;15&lt;/maven.compiler.source&gt;
      &lt;maven.compiler.target&gt;15&lt;/maven.compiler.target&gt;
      &lt;project.build.sourceEncoding&gt;UTF-8&lt;/project.build.sourceEncoding&gt;
      &lt;project.reporting.outputEncoding&gt;UTF-8&lt;/project.reporting.outputEncoding&gt;
  &lt;/properties&gt;
  
  &lt;dependencies&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.seleniumhq.selenium&lt;/groupId&gt;
          &lt;artifactId&gt;selenium-java&lt;/artifactId&gt;
          &lt;version&gt;3.141.59&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;dependency&gt;
          &lt;groupId&gt;junit&lt;/groupId&gt;
          &lt;artifactId&gt;junit&lt;/artifactId&gt;
          &lt;version&gt;4.13.1&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;!-- https://mvnrepository.com/artifact/net.sourceforge.jexcelapi/jxl --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;net.sourceforge.jexcelapi&lt;/groupId&gt;
          &lt;artifactId&gt;jxl&lt;/artifactId&gt;
          &lt;version&gt;2.6.12&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;dependency&gt;
          &lt;groupId&gt;io.cucumber&lt;/groupId&gt;
          &lt;artifactId&gt;cucumber-java&lt;/artifactId&gt;
          &lt;version&gt;6.9.1&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;dependency&gt;
          &lt;groupId&gt;io.cucumber&lt;/groupId&gt;
          &lt;artifactId&gt;cucumber-core&lt;/artifactId&gt;
          &lt;version&gt;6.9.1&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;dependency&gt;
          &lt;groupId&gt;io.cucumber&lt;/groupId&gt;
          &lt;artifactId&gt;cucumber-junit&lt;/artifactId&gt;
          &lt;version&gt;6.9.1&lt;/version&gt;
      &lt;/dependency&gt;
  
  
      &lt;dependency&gt;
          &lt;groupId&gt;io.cucumber&lt;/groupId&gt;
          &lt;artifactId&gt;cucumber-testng&lt;/artifactId&gt;
          &lt;version&gt;6.9.1&lt;/version&gt;
      &lt;/dependency&gt;
  
  
      &lt;!-- https://mvnrepository.com/artifact/org.testng/testng --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.testng&lt;/groupId&gt;
          &lt;artifactId&gt;testng&lt;/artifactId&gt;
          &lt;version&gt;7.3.0&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;!-- https://mvnrepository.com/artifact/io.cucumber/datatable-dependencies --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;io.cucumber&lt;/groupId&gt;
          &lt;artifactId&gt;datatable-dependencies&lt;/artifactId&gt;
          &lt;version&gt;1.0.0&lt;/version&gt;
      &lt;/dependency&gt;
  
      &lt;!-- https://mvnrepository.com/artifact/com.aventstack/extentreports --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;com.aventstack&lt;/groupId&gt;
          &lt;artifactId&gt;extentreports&lt;/artifactId&gt;
          &lt;version&gt;5.0.6&lt;/version&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.jetbrains&lt;/groupId&gt;
          &lt;artifactId&gt;annotations&lt;/artifactId&gt;
          &lt;version&gt;RELEASE&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
      &lt;/dependency&gt;
  
  
  &lt;/dependencies&gt;
  </code></pre>
  
  <p>TestRunner</p>
  <pre><code>import com.aventstack.extentreports.gherkin.model.Feature;
  import com.crm.framework.utilities.ExtentReport;
  import io.cucumber.testng.*;
  import org.testng.annotations.Test;
  import org.testng.ITestContext;
  import org.testng.annotations.AfterClass;
  import org.testng.annotations.BeforeClass;
  import org.testng.annotations.DataProvider;
  
  import java.util.List;
  
  //json:target/cucumber-reports/cucumberTestReport.json
  @CucumberOptions(
      features = {&quot;src/test/java/features/&quot;},
      glue = {&quot;steps&quot;},
      plugin = {&quot;json:target/cucumber-json-report.json&quot;,
              &quot;pretty&quot;, &quot;html:target/cucumber-report-html&quot;})
  public class TestRunner {
  
  private TestNGCucumberRunner testNGCucumberRunner;
  
  @BeforeClass(alwaysRun = true)
  public void setUpClass() {
      testNGCucumberRunner = new TestNGCucumberRunner(this.getClass());
  }
  
  @Test(dataProvider = &quot;features&quot;)
  public void LoginTest(CucumberFeatureWrapper cucumberFeatureWrapper) throws ClassNotFoundException {
      //Insert the Feature Name
      //ExtentReport.startFeature(&quot;login&quot;).assignAuthor(&quot;DiegoHM&quot;).assignDevice(&quot;Chrome&quot;).assignCategory(&quot;Regression&quot;);
  
  }
  
  @DataProvider
  public Object[] features(ITestContext context) {
      // return testNGCucumberRunner.
      return testNGCucumberRunner.provideFeatures();
      
  }
  
  @AfterClass(alwaysRun = true)
  public void afterClass() {
      testNGCucumberRunner.finish();
  }
  </code></pre>
  <p>}</p>