Maven Project Test Can't Find Cucumber Tests to run feature test on command line (Works on Cucumber)
<p>first post here, I have been looking through stack for a solution to my problem. I am trying to run a test through maven on my Cucumber Test example. mvn test doesn't pick up the steps file (after I have defined the location in the Runner Test file feature = ...) It gives me the snippet declarations in the command line. I would like to also mention that it <strong>works</strong> perfectly fine in eclipse when I run the feature file. </p>

<p><strong>Here is my structure</strong></p>

<p><a href="https://i.stack.imgur.com/yQIk3.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/yQIk3.jpg" alt="enter image description here"></a></p>

<p><strong>Here is my mvn test</strong></p>

<pre><code>$ mvn test
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Cucumber 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ Cucumber ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory C:\Users\Johnny\workspace\Cucumber\src\main\resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ Cucumber ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ Cucumber ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory C:\Users\Johnny\workspace\Cucumber\src\test\resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ Cucumber ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 2 source files to C:\Users\Johnny\workspace\Cucumber\target\test-classes
[INFO]
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ Cucumber ---
[INFO] Surefire report directory: C:\Users\Johnny\workspace\Cucumber\target\surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running edu.mason.Cucumber.CucumbRunnerTest

1 Scenarios (1 undefined)
3 Steps (3 undefined)
0m0.000s


You can implement missing steps with the snippets below:

@Given("^I have value in an account$")
public void i_have_value_in_an_account() throws Throwable {
    // Write code here that turns the phrase above into concrete actions
    throw new PendingException();
}

@When("^I deduct money from a bank account$")
public void i_deduct_money_from_a_bank_account() throws Throwable {
    // Write code here that turns the phrase above into concrete actions
    throw new PendingException();
}

@Then("^I will verify the deduction has occured correctly$")
public void i_will_verify_the_deduction_has_occured_correctly() throws Throwable {
    // Write code here that turns the phrase above into concrete actions
    throw new PendingException();
}

Tests run: 5, Failures: 0, Errors: 0, Skipped: 4, Time elapsed: 1.692 sec

Results :

Tests run: 5, Failures: 0, Errors: 0, Skipped: 4

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 9.329 s
[INFO] Finished at: 2016-09-29T15:19:46-07:00
[INFO] Final Memory: 14M/194M
[INFO] ------------------------------------------------------------------------
</code></pre>

<p><strong>Pom File</strong></p>

<pre><code>&lt;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"&gt;
    &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;

    &lt;groupId&gt;edu.mason&lt;/groupId&gt;
    &lt;artifactId&gt;Cucumber&lt;/artifactId&gt;
    &lt;version&gt;0.0.1-SNAPSHOT&lt;/version&gt;
    &lt;packaging&gt;jar&lt;/packaging&gt;

    &lt;name&gt;Cucumber&lt;/name&gt;
    &lt;url&gt;http://maven.apache.org&lt;/url&gt;

    &lt;properties&gt;
        &lt;project.build.sourceEncoding&gt;UTF-8&lt;/project.build.sourceEncoding&gt;
    &lt;/properties&gt;

    &lt;dependencies&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;junit&lt;/groupId&gt;
            &lt;artifactId&gt;junit&lt;/artifactId&gt;
            &lt;version&gt;4.12&lt;/version&gt;
            &lt;scope&gt;test&lt;/scope&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;info.cukes&lt;/groupId&gt;
            &lt;artifactId&gt;cucumber-java&lt;/artifactId&gt;
            &lt;version&gt;1.2.5&lt;/version&gt;
            &lt;scope&gt;test&lt;/scope&gt;
        &lt;/dependency&gt;
        &lt;dependency&gt;
            &lt;groupId&gt;info.cukes&lt;/groupId&gt;
            &lt;artifactId&gt;cucumber-junit&lt;/artifactId&gt;
            &lt;version&gt;1.2.5&lt;/version&gt;
            &lt;scope&gt;test&lt;/scope&gt;
        &lt;/dependency&gt;
    &lt;/dependencies&gt;
&lt;/project&gt;
</code></pre>

<p><strong>CucumberRunnerTest</strong></p>

<pre><code>package edu.mason.Cucumber;

import org.junit.runner.RunWith;

import cucumber.api.CucumberOptions;
import cucumber.api.junit.Cucumber;

@RunWith(Cucumber.class)
@CucumberOptions(features="src/test/resource")
public class CucumbRunnerTest {

}
</code></pre>

<p><strong>CucumbSteps</strong></p>

<pre><code>package cucumb.features;

import static org.junit.Assert.*;


import cucumber.api.java.en.Given;
import cucumber.api.java.en.Then;
import cucumber.api.java.en.When;


public class CucumbSteps {
    int balance = 3000;

    @Given("^I have value in an account$")
    public void valueCheck(){
        System.out.println("Your balance is: "+balance);
    }
    @When("^I deduct money from a bank account$")
    public void stealMoney(){
        balance-=2999;
        System.out.println("Money has succesfully be stolen!!!" + balance);
    }
    @Then("^I will verify the deduction has occured correctly$")
    public void verifyStolen(){
        System.out.print("If money is stolen successfully, assert will be true (1) ");
        assertTrue(balance==1);
    }

}
</code></pre>