运行黄瓜Java项目“ java.lang.ClassNotFoundException:cucumberOptions.TestRunner”时出现问题?

时间:2020-09-17 17:15:32

标签: java selenium maven junit cucumber

登录功能文件运行正常...

Feature: Application Login

Scenario: Home page default login
Given User is on Netbanking Landing Page
When User login into application with username and password
Then Home page is populated
And Cards are displayed

TestRunner类如下:

包装黄瓜选项; 导入org.junit.runner.RunWith; 导入cumul.api.SnippetType; 导入cumul.api.CucumberOptions; 进口cumul.api.junit.Cucumber;

@RunWith(Cucumber.class)
@CucumberOptions(
      snippets = SnippetType.CAMELCASE,
      features = "feature",//C:\\Users\\Sanket\\Documents\\QA_testing\\Selenium\\Eclipse\\Automation\\src\\test\\java\\feature\\Login.feature",
      glue = {"classpath:/cucumberOptions/src/test/java/stepDefinition"})
        //C:\\Users\\Sanket\\Documents\\QA_testing\\Selenium\\Eclipse\\Automation\\src\\test\\java\\stepDefinitons\\stepDefinition.java

定义stepDefinition文件的参数

public class TestRunner {
      
}

pom.xml文件如下:

<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>Cucumber</groupId>
  <artifactId>Automation</artifactId>
  <version>0.0.1-SNAPSHOT</version>

  <name>Automation</name>
  <url>http://www.example.com</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
  </properties>
  
  <dependencies>
      <dependency>
    <groupId>info.cukes</groupId>
    <artifactId>cucumber-java</artifactId>
    <version>1.2.2</version>
  </dependency> 
  <!-- https://mvnrepository.com/artifact/info.cukes/cucumber-junit -->
<dependency>
    <groupId>info.cukes</groupId>
    <artifactId>cucumber-junit</artifactId>
    <version>1.2.2</version>
    <scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/info.cukes/cucumber-testng -->
<dependency>
    <groupId>info.cukes</groupId>
    <artifactId>cucumber-testng</artifactId>
    <version>1.2.2</version>
</dependency>
  <dependency>
          <groupId>io.cucumber</groupId>
          <artifactId>cucumber-core</artifactId>
          <version>1.2.2</version>
      </dependency>
      <!-- https://mvnrepository.com/artifact/info.cukes/cucumber-jvm -->
<dependency>
    <groupId>info.cukes</groupId>
    <artifactId>cucumber-jvm</artifactId>
    <version>1.0.3</version>
    <type>pom</type>
</dependency>
<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.6</version>
</dependency>
<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-java</artifactId>
    <version>3.141.59</version>
</dependency>
<!-- https://mvnrepository.com/artifact/info.cukes/gherkin -->
<dependency>
    <groupId>info.cukes</groupId>
    <artifactId>gherkin</artifactId>
    <version>2.12.2</version>
    <scope>provided</scope>
</dependency>
      <!-- https://mvnrepository.com/artifact/org.testng/testng -->
      <dependency>
          <groupId>org.testng</groupId>
          <artifactId>testng</artifactId>
          <version>7.1.0</version>
      </dependency>
      <!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.13</version>
    <scope>test</scope>
</dependency>
      
      <!-- https://mvnrepository.com/artifact/junit/junit -->
  </dependencies>
  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <artifactId>maven-clean-plugin</artifactId>
          <version>3.1.0</version>
        </plugin>
        <plugin>
          <artifactId>maven-resources-plugin</artifactId>
          <version>3.0.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.8.0</version>
        </plugin>
        <plugin>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.22.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-jar-plugin</artifactId>
          <version>3.0.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-install-plugin</artifactId>
          <version>2.5.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-deploy-plugin</artifactId>
          <version>2.8.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-site-plugin</artifactId>
          <version>3.7.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-project-info-reports-plugin</artifactId>
          <version>3.0.0</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
</project>

STEPDEFINITION文件显示黄瓜类问题。课程如下:

打包stepDefinitons;

import org.junit.runner.RunWith;
import cucumber.api.java.en.And;
import cucumber.api.java.en.Given;
import cucumber.api.java.en.Then;
import cucumber.api.java.en.When;
import cucumber.api.junit.Cucumber;
import cucumber.annotation.en.when;
import cucumber.api.CucumberOptions;      
@SuppressWarnings("deprecation")
@RunWith (Cucumber.class)
public class stepDefinition {

  @Given("^User is on Netbanking Landing Page$")
    public void user_is_on_netbanking_landing_page() throws Throwable {
    
      System.out.println("Navigate to Login page");
    }
    
    @When("^User login into application with username and password$")
    public void user_login_into_application_with_username_and_password()
   throws Throwable {                 
        System.out.println("Logged in success");
    }

    @SuppressWarnings("deprecation")
  @Then("^Home page is populated$")
    public void home_page_is_populated() throws Throwable {
       System.out.println("Validated Home page");
    }

    @And("^Cards are displayed$")
    public void cards_are_displayed() throws Throwable {
        System.out.println("Validated cards");
    }

}

我已经尝试过pom.xml文件中所有依赖项组合。但是无法成功运行TestRunner文件。要素类已连接到stepDefinition类。但是,cucumberOptions.TestRunner类却收到ClassNotFound异常。请问有人可以帮我解决这个问题吗??

0 个答案:

没有答案
相关问题