Java 无法在Cucumber Maven(testng)中运行testng.xml

Java 无法在Cucumber Maven(testng)中运行testng.xml,java,maven,selenium-webdriver,cucumber,testng,Java,Maven,Selenium Webdriver,Cucumber,Testng,在EclipseIDE中,我使用Maven项目创建了一个基本的cucumber框架 我已经添加了pom.xml.For TestNG插件中所需的所有依赖项,这些依赖项添加在下面 <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version&

在EclipseIDE中,我使用Maven项目创建了一个基本的cucumber框架

我已经添加了pom.xml.For TestNG插件中所需的所有依赖项,这些依赖项添加在下面

 <dependency>       
      <groupId>org.testng</groupId>
        <artifactId>testng</artifactId>              
        <version>6.14.3</version>
        <scope>test</scope>         
</dependency> 
<dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-testng</artifactId>
        <version>1.2.5</version>   
 </dependency>
像这样,我为每个模块设置了一个runner类,以结束场景

例:

登录,转到产品页面并注销

登录、生成报告和注销

我试图通过testng.xml文件运行这些runner类

testng.xml文件

但这是错误的


问题是因为maven repositeries中存储的垃圾罐不兼容

请遵循以下步骤

从项目目录中清除旧属性/maven dependenciesOpen命令提示符 并运行以下命令 mvn eclipse:clean mvn eclipse:eclipse-Dwtpversion=2.0 下载下面的cucumber jar文件并添加到项目中不要将其添加到pom中 直接地

<dependency>
    <groupId>info.cukes</groupId>
    <artifactId>cucumber-core</artifactId>
    <version>1.2.5</version>
</dependency>
<dependency>
    <groupId>info.cukes</groupId>
    <artifactId>cucumber-java</artifactId>
    <version>1.2.5</version>
</dependency
<dependency>
    <groupId>info.cukes</groupId>
    <artifactId>cucumber-jvm-deps</artifactId>
    <version>1.0.5</version>
    <scope>provided</scope>
</dependency>
<dependency>
    <groupId>info.cukes</groupId>
    <artifactId>gherkin</artifactId>
    <version>2.12.2</version>
    <scope>provided</scope>
</dependency>
使用下面的testng.xml文件执行
谢谢

更新您的项目。右键单击project->maven->update。尝试我尝试了“更新项目”和“刷新”,但都不起作用。看到这个,它没有帮助。谢谢!按照此链接使用testng运行cucumber-
 <?xml version="1.0" encoding="UTF-8"?> 
 <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
   <suite name="First Suite" parallel="classes"> 
    <test name="Chrome Test" parallel="classes">
       <classes> 
           <class name ="tests.report.runners.ReportRunner"></class>
       </classes> 
   </test> 
</suite>
<dependency>
    <groupId>info.cukes</groupId>
    <artifactId>cucumber-core</artifactId>
    <version>1.2.5</version>
</dependency>
<dependency>
    <groupId>info.cukes</groupId>
    <artifactId>cucumber-java</artifactId>
    <version>1.2.5</version>
</dependency
<dependency>
    <groupId>info.cukes</groupId>
    <artifactId>cucumber-jvm-deps</artifactId>
    <version>1.0.5</version>
    <scope>provided</scope>
</dependency>
<dependency>
    <groupId>info.cukes</groupId>
    <artifactId>gherkin</artifactId>
    <version>2.12.2</version>
    <scope>provided</scope>
</dependency>
<dependency>
   <groupId>info.cukes</groupId>
   <artifactId>cucumber-testng</artifactId>
   <version>1.2.5</version>
</dependency>
  package tests.report.runners;
  import org.testng.annotations.Test;
  import cucumber.api.testng.AbstractTestNGCucumberTests;
  import cucumber.api.CucumberOptions;
  @Test
  @CucumberOptions(features = "src/test/resources/features",glue= {"tests"},tags= 
  {"@Report"})
  public class ReportRunner extends AbstractTestNGCucumberTests {
  }
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="First Suite" >
<test name="Chrome Test" >
<classes>
<class name ="tests.report.runners.ReportRunner"></class>
</classes> 
</test>
</suite>