cucumber测试失败,cucumber.runtime.cucumberexception:java.util.regex.patternsyntaxexception

fafcakar  于 2021-07-26  发布在  Java
关注(0)|答案(0)|浏览(276)

我正在尝试更新测试框架中的一些依赖项,但是当我在这里使用示例时:https://github.com/cmccarthyirl/spring-cucumber-junit-test-harness 我得到以下错误,我不知道为什么。。。
我尝试过本主题中建议的解决方案,但都不适用于我:
cucumber.runtime.cucumberexception:java.util.regex.patternsyntaxexception:索引39附近非法重复
任何帮助都将不胜感激
错误

  1. cucumber.runtime.CucumberException: java.util.regex.PatternSyntaxException: Illegal repetition near index 53
  2. the user logged into the App with the following {String} and {String}
  3. ^
  4. at cucumber.runtime.java.JavaBackend.addStepDefinition(JavaBackend.java:149)
  5. at cucumber.runtime.java.MethodScanner.scan(MethodScanner.java:63)
  6. at cucumber.runtime.java.MethodScanner.scan(MethodScanner.java:40)
  7. at cucumber.runtime.java.JavaBackend.loadGlue(JavaBackend.java:79)
  8. at cucumber.runner.Runner.<init>(Runner.java:45)
  9. at cucumber.runtime.Runtime.<init>(Runtime.java:65)
  10. at cucumber.runtime.Runtime.<init>(Runtime.java:45)
  11. at cucumber.runtime.Runtime.<init>(Runtime.java:41)
  12. at cucumber.api.junit.Cucumber.createRuntime(Cucumber.java:102)
  13. at cucumber.api.junit.Cucumber.<init>(Cucumber.java:77)
  14. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
  15. at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
  16. at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
  17. at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
  18. at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
  19. at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
  20. at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
  21. at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
  22. at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
  23. at org.junit.internal.requests.ClassRequest.createRunner(ClassRequest.java:28)
  24. at org.junit.internal.requests.MemoizingRequest.getRunner(MemoizingRequest.java:19)
  25. at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:50)
  26. at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:33)
  27. at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:220)
  28. at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:53)
  29. Caused by: java.util.regex.PatternSyntaxException: Illegal repetition near index 53
  30. the user logged into the App with the following {String} and {String}
  31. ^
  32. at java.util.regex.Pattern.error(Pattern.java:1969)
  33. at java.util.regex.Pattern.closure(Pattern.java:3171)
  34. at java.util.regex.Pattern.sequence(Pattern.java:2148)
  35. at java.util.regex.Pattern.expr(Pattern.java:2010)
  36. at java.util.regex.Pattern.compile(Pattern.java:1702)
  37. at java.util.regex.Pattern.<init>(Pattern.java:1352)
  38. at java.util.regex.Pattern.compile(Pattern.java:1028)
  39. at cucumber.runtime.java.JavaBackend.pattern(JavaBackend.java:185)
  40. at cucumber.runtime.java.JavaBackend.addStepDefinition(JavaBackend.java:144)
  41. ... 24 more

跑步者等级

  1. package com.app;
  2. import org.junit.runner.RunWith;
  3. import cucumber.api.CucumberOptions;
  4. import cucumber.api.junit.Cucumber;
  5. @RunWith(Cucumber.class)
  6. @CucumberOptions(plugin = {
  7. "pretty", "com.aventstack.extentreports.cucumber.adapter.ExtentCucumberAdapter:", "json:target/cucumber-report.json"
  8. }, glue = {
  9. "step", "utils"
  10. }, features = {
  11. "classpath:features/miscellaneous/Login.feature"
  12. })
  13. public class AbInitioRunnerTest {
  14. }

要素类

  1. @App
  2. Feature: User login tests
  3. Scenario Outline: Verify the user can log in
  4. Given the user logged into the App with the following <username> and <password>
  5. Examples:
  6. | username | password |
  7. | automation | automation |

step类

  1. @Given("^the user logged into the App with the following (.*) and (.*)$")
  2. public void theUserLoggedIntoTheAppWithTheFollowingUsernameAndPassword(String username,
  3. String password) {
  4. ...
  5. }

聚甲醛

  1. <dependency>
  2. <groupId>com.aventstack</groupId>
  3. <artifactId>extentreports-cucumber2-adapter</artifactId>
  4. <version>1.0.0</version>
  5. </dependency>
  6. <dependency>
  7. <groupId>io.cucumber</groupId>
  8. <artifactId>cucumber-core</artifactId>
  9. <version>2.3.1</version>
  10. </dependency>
  11. <dependency>
  12. <groupId>io.cucumber</groupId>
  13. <artifactId>cucumber-java</artifactId>
  14. <version>2.3.1</version>
  15. </dependency>
  16. <dependency>
  17. <groupId>io.cucumber</groupId>
  18. <artifactId>cucumber-junit</artifactId>
  19. <version>2.3.1</version>
  20. <scope>test</scope>
  21. </dependency>
  22. <dependency>
  23. <groupId>io.cucumber</groupId>
  24. <artifactId>cucumber-spring</artifactId>
  25. <version>2.3.1</version>
  26. </dependency>

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题