当前位置: 首页 > 知识库问答 >
问题:

不能使用TestNG测试运行程序运行单独的cucumber场景

魏兴邦
2023-03-14

是否可以通过右键单击功能文件中的各个场景而不是使用命令文件或直接运行 TestNG 运行器文件来使用 TestNG 运行器运行cucumber场景?

我使用Intellij在maven测试框架中运行cucumber场景。在POM.xml文件中,我有一个引用testNG.xml文件的Surefire插件,该文件指向TestNG runner类。

当我从终端运行“mvn test”时,它会调用 TestNG 测试运行器,但是当我右键单击功能文件中的场景以选择运行时,它会运行调用 io.cucumber.core.runner.Runner 类测试运行器的 io.cucumber.core.runner.Runner 类测试运行器。

我无法编辑运行/调试配置以使用TestNG运行程序,因为TestNG运行器没有Main方法。

共有2个答案

齐浩淼
2023-03-14

如果anybone遇到同样的问题,我设法通过创建另一个具有main方法的类并调用mvn命令从那里运行测试来解决这个问题。大概是这样的:

String mvnCommand = "mvn test ";
ProcessBuilder processBuilder = new ProcessBuilder("cmd.exe", "/c", mvnCommand + args);
processBuilder.start();

不确定是否有更好的解决方案,但我似乎找不到Cucumber for Java插件的任何其他选项。

邹博明
2023-03-14

您可以创建一个runner类,并将所需的标记添加到CucumberOptions中。

@CucumberOptions(plugin = {"pretty"}, strict = true, tags = {"@yourTag"})
public class RunTestNGTest extends AbstractTestNGCucumberTests {
}
 类似资料:
  • 我有一个Maven项目,所有的配置都是正确的,最近我用GIT和Jenkins配置了这个项目,创建了Jenkin作业。 早些时候,我可以通过右键单击project并运行**-->**Run-->Maven test和test execution use来启动整个项目,但现在它不会抛出任何错误,而是不会启动浏览器来执行。 但是,如果我使用TestNG单独运行Java文件[单个测试用例],它就会按照预期

  • 下面是我的赛跑课, 配置失败:@AfterClass tearDownClass java.lang.NullPoInterException at Cucumber.api.testng.AbstractTestngCucumberTests.tearDownClass(AbstractTestngCucumberTests.java:34)at Sun.Reflect.NativeMethod

  • 我试图使用TestNG和SpringBootTest并行运行两个Cucumber测试,但当我的测试执行时,会发生以下情况 两个浏览器都打开并导航到维基百科主页 1个浏览器继续测试,另一个留在主页上 1个测试通过,另一个测试失败 我不知道为什么一个测试会停止执行,欢迎任何帮助。 回购:https://github.com/cmccarthyIrl/spring-cucumber-testng-par

  • 我正在尝试运行一个使用Mockito的JUnit cucumber测试。这是我遇到的问题。在我的cucumber赛跑课上,我有 在我的常规JUnit测试中 鉴于我一次只能有一个@RunWith,我如何将Mockito与cucumber结合使用呢?

  • 在eclipse IDE中,我使用Maven项目创建了一个基本的cucumber框架。 我已经添加了pom.xml.for dependencies下面添加的TestNG插件中所需的所有依赖项。 但是“TestNG套件”选项没有出现在首选项中,所以通过帮助->Install New Software安装TestNG。 testng.xml文件 但它的投掷低于错误

  • Javav8. x-Springv5. xcucumberv4.2.0 我尝试了temyers/cucumber jvm并行插件,效果很好,但当我进入他们的gitihub页面时,他们宣布停止使用该插件b/c cucumber已经开始支持cucumber jvm 4.0的并行测试运行支持。0 我有使用以下maven依赖项的现有测试。 我有两个问题让我困惑。 为了使用cucumber-jvm,我必须更