在使用REST Assured进行测试时出现java.lang.AbstractMethodError错误。

huangapple go评论117阅读模式
英文:

Getting java.lang.AbstractMethodError when I test using REST Assured

问题

  1. 我正在尝试使用`REST Assured v4.3.0`来测试我在控制器类中定义的REST API,但是在运行测试时出现了`java.lang.AbstractMethodError`错误。我理解这个错误是因为我在调用一个抽象方法,但我很难解决这个问题。
  2. 看起来错误是由于`SampleControllerTest.java`中的`.body(is(equalTo("success")))`引起的,因为当我删除这行代码时,测试就会成功。我尝试了一些方法来解决它,但都没有成功:
  3. - 在网上搜索了一些建议和示例,但它们要么是针对旧版本的,要么与`io.rest-assured/spring-mock-mvc`无关。
  4. - 尝试了不同的匹配器(`org.hamcrest.Matchers.*``org.hamcrest.CoreMatchers.*`)。
  5. - 尝试在pom文件中显式添加`org.hamcrest/hamcrest`依赖。
  6. 以下是您参考的代码:
  7. **代码结构:**
  8. ```plaintext
  9. test
  10. |- src/
  11. | |- main/
  12. | | |- java/
  13. | | | |- org/
  14. | | | | |- example/
  15. | | | | | |- Application.java
  16. | | | | | |- SampleController.java
  17. | |- test/
  18. | | |- java/
  19. | | | |- org/
  20. | | | | |- example/
  21. | | | | | |- SampleControllerTest.java
  22. |- target/
  23. |- pom.xml

Application.java

  1. package org.example;
  2. import org.springframework.boot.SpringApplication;
  3. import org.springframework.boot.autoconfigure.SpringBootApplication;
  4. @SpringBootApplication
  5. public class Application {
  6. public static void main(String[] args) {
  7. SpringApplication.run(Application.class, args);
  8. }
  9. }

SampleController.java

  1. package org.example;
  2. import org.springframework.http.HttpStatus;
  3. import org.springframework.web.bind.annotation.RequestMapping;
  4. import org.springframework.web.bind.annotation.ResponseStatus;
  5. import org.springframework.web.bind.annotation.RestController;
  6. @RestController
  7. public class SampleController {
  8. @RequestMapping(value = "/sample")
  9. @ResponseStatus(value = HttpStatus.OK)
  10. public String getSample() {
  11. return "success";
  12. }
  13. }

SampleControllerTest.java

  1. package org.example;
  2. import org.junit.Test;
  3. import static io.restassured.module.mockmvc.RestAssuredMockMvc.*;
  4. import static org.hamcrest.Matchers.*;
  5. import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
  6. public class SampleControllerTest {
  7. @Test
  8. public void testGetSample() {
  9. given()
  10. .standaloneSetup(new SampleController())
  11. .when()
  12. .get("/sample")
  13. .then()
  14. .assertThat(status().isOk())
  15. .body(is(equalTo("success")));
  16. }
  17. }

pom.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. <modelVersion>4.0.0</modelVersion>
  6. <packaging>jar</packaging>
  7. <parent>
  8. <groupId>org.springframework.boot</groupId>
  9. <artifactId>spring-boot-starter-parent</artifactId>
  10. <version>2.2.1.RELEASE</version>
  11. <relativePath/> <!-- lookup parent from repository -->
  12. </parent>
  13. <groupId>org.example</groupId>
  14. <artifactId>test</artifactId>
  15. <version>1.0-SNAPSHOT</version>
  16. <properties>
  17. <java.version>8</java.version>
  18. <start-class>org.example.Application</start-class>
  19. </properties>
  20. <dependencies>
  21. <dependency>
  22. <groupId>org.springframework.boot</groupId>
  23. <artifactId>spring-boot-starter-web</artifactId>
  24. </dependency>
  25. <!-- JUnit -->
  26. <dependency>
  27. <groupId>junit</groupId>
  28. <artifactId>junit</artifactId>
  29. <version>4.12</version>
  30. <scope>test</scope>
  31. </dependency>
  32. <!-- https://mvnrepository.com/artifact/io.rest-assured/spring-mock-mvc -->
  33. <dependency>
  34. <groupId>io.rest-assured</groupId>
  35. <artifactId>spring-mock-mvc</artifactId>
  36. <version>4.3.0</version>
  37. <scope>test</scope>
  38. </dependency>
  39. <!-- https://mvnrepository.com/artifact/io.rest-assured/json-path -->
  40. <dependency>
  41. <groupId>io.rest-assured</groupId>
  42. <artifactId>json-path</artifactId>
  43. <version>4.3.0</version>
  44. </dependency>
  45. <!-- https://mvnrepository.com/artifact/io.rest-assured/xml-path -->
  46. <dependency>
  47. <groupId>io.rest-assured</groupId>
  48. <artifactId>xml-path</artifactId>
  49. <version>4.3.0</version>
  50. </dependency>
  51. <!-- https://mvnrepository.com/artifact/io.rest-assured/rest-assured -->
  52. <dependency>
  53. <groupId>io.rest-assured</groupId>
  54. <artifactId>rest-assured</artifactId>
  55. <version>4.3.0</version>
  56. <scope>test</scope>
  57. </dependency>
  58. </dependencies>
  59. <build>
  60. <plugins>
  61. <plugin>
  62. <groupId>org.springframework.boot</groupId>
  63. <artifactId>spring-boot-maven-plugin</artifactId>
  64. </plugin>
  65. </plugins>
  66. </build>
  67. </project>

当我使用mvn test运行测试时,我收到以下错误:

  1. [ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.325 s <<< FAILURE! - in org.example.SampleControllerTest
  2. [ERROR] testGetSample(org.example.SampleControllerTest) Time elapsed: 1.288 s <<< ERROR!
  3. java.lang.AbstractMethodError: Method io/restassured/internal/ResponseSpecificationImpl.getProperty(Ljava/lang/String;)Ljava/lang/Object; is abstract
  4. at org.example.SampleControllerTest.testGetSample(SampleControllerTest.java:20)

提前感谢您的任何帮助!

  1. <details>
  2. <summary>英文:</summary>
  3. I&#39;m trying to test a REST api defined in my controller class using `REST Assured v4.3.0`, but I get `java.lang.AbstractMethodError` when I run the test. I understand this error is occurring because I&#39;m calling an abstract method, but I&#39;m having a hard time resolving it.
  4. It seems that the error is occurring due to `.body(is(equalTo(&quot;success&quot;)))` in `SampleControllerTest.java` because when I remove this line, the test succeeds. I tried a few things to resolve it, but didn&#39;t get any success:
  5. - Searched online for suggestions and examples, but they are either for older versions or not related to `io.rest-assured/spring-mock-mvc`
  6. - Tried different matchers (`org.hamcrest.Matchers.*` and `org.hamcrest.CoreMatchers.*`)
  7. - Tried adding `org.hamcrest/hamcrest` dependency in the pom file explicitly
  8. Here&#39;s my code for your reference:
  9. **Code structure:**

test
|- src/
| |- main/
| | |- java/
| | | |- org/
| | | | |- example/
| | | | | |- Application.java
| | | | | |- SampleController.java
| |- test/
| | |- java/
| | | |- org/
| | | | |- example/
| | | | | |- SampleControllerTest.java
|- target/
|- pom.xml

  1. **Application.java**
  2. ```java
  3. package org.example;
  4. import org.springframework.boot.SpringApplication;
  5. import org.springframework.boot.autoconfigure.SpringBootApplication;
  6. @SpringBootApplication
  7. public class Application {
  8. public static void main(String[] args) {
  9. SpringApplication.run(Application.class, args);
  10. }
  11. }

SampleController.java

  1. package org.example;
  2. import org.springframework.http.HttpStatus;
  3. import org.springframework.web.bind.annotation.RequestMapping;
  4. import org.springframework.web.bind.annotation.ResponseStatus;
  5. import org.springframework.web.bind.annotation.RestController;
  6. @RestController
  7. public class SampleController {
  8. @RequestMapping(value = &quot;/sample&quot;)
  9. @ResponseStatus(value = HttpStatus.OK)
  10. public String getSample() {
  11. return &quot;success&quot;;
  12. }
  13. }

SampleControllerTest.java

  1. package org.example;
  2. import org.junit.Test;
  3. import static io.restassured.module.mockmvc.RestAssuredMockMvc.*;
  4. import static org.hamcrest.Matchers.*;
  5. import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
  6. public class SampleControllerTest {
  7. @Test
  8. public void testGetSample() {
  9. given()
  10. .standaloneSetup(new SampleController())
  11. .when()
  12. .get(&quot;/sample&quot;)
  13. .then()
  14. .assertThat(status().isOk())
  15. .body(is(equalTo(&quot;success&quot;)));
  16. }
  17. }

pom.xml

  1. &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
  2. &lt;project xmlns=&quot;http://maven.apache.org/POM/4.0.0&quot;
  3. xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
  4. xsi:schemaLocation=&quot;http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd&quot;&gt;
  5. &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;
  6. &lt;packaging&gt;jar&lt;/packaging&gt;
  7. &lt;parent&gt;
  8. &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
  9. &lt;artifactId&gt;spring-boot-starter-parent&lt;/artifactId&gt;
  10. &lt;version&gt;2.2.1.RELEASE&lt;/version&gt;
  11. &lt;relativePath/&gt; &lt;!-- lookup parent from repository --&gt;
  12. &lt;/parent&gt;
  13. &lt;groupId&gt;org.example&lt;/groupId&gt;
  14. &lt;artifactId&gt;test&lt;/artifactId&gt;
  15. &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
  16. &lt;properties&gt;
  17. &lt;java.version&gt;8&lt;/java.version&gt;
  18. &lt;start-class&gt;org.example.Application&lt;/start-class&gt;
  19. &lt;/properties&gt;
  20. &lt;dependencies&gt;
  21. &lt;dependency&gt;
  22. &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
  23. &lt;artifactId&gt;spring-boot-starter-web&lt;/artifactId&gt;
  24. &lt;/dependency&gt;
  25. &lt;!-- JUnit --&gt;
  26. &lt;dependency&gt;
  27. &lt;groupId&gt;junit&lt;/groupId&gt;
  28. &lt;artifactId&gt;junit&lt;/artifactId&gt;
  29. &lt;version&gt;4.12&lt;/version&gt;
  30. &lt;scope&gt;test&lt;/scope&gt;
  31. &lt;/dependency&gt;
  32. &lt;!-- https://mvnrepository.com/artifact/io.rest-assured/spring-mock-mvc --&gt;
  33. &lt;dependency&gt;
  34. &lt;groupId&gt;io.rest-assured&lt;/groupId&gt;
  35. &lt;artifactId&gt;spring-mock-mvc&lt;/artifactId&gt;
  36. &lt;version&gt;4.3.0&lt;/version&gt;
  37. &lt;scope&gt;test&lt;/scope&gt;
  38. &lt;/dependency&gt;
  39. &lt;!-- https://mvnrepository.com/artifact/io.rest-assured/json-path --&gt;
  40. &lt;dependency&gt;
  41. &lt;groupId&gt;io.rest-assured&lt;/groupId&gt;
  42. &lt;artifactId&gt;json-path&lt;/artifactId&gt;
  43. &lt;version&gt;4.3.0&lt;/version&gt;
  44. &lt;/dependency&gt;
  45. &lt;!-- https://mvnrepository.com/artifact/io.rest-assured/xml-path --&gt;
  46. &lt;dependency&gt;
  47. &lt;groupId&gt;io.rest-assured&lt;/groupId&gt;
  48. &lt;artifactId&gt;xml-path&lt;/artifactId&gt;
  49. &lt;version&gt;4.3.0&lt;/version&gt;
  50. &lt;/dependency&gt;
  51. &lt;!-- https://mvnrepository.com/artifact/io.rest-assured/rest-assured --&gt;
  52. &lt;dependency&gt;
  53. &lt;groupId&gt;io.rest-assured&lt;/groupId&gt;
  54. &lt;artifactId&gt;rest-assured&lt;/artifactId&gt;
  55. &lt;version&gt;4.3.0&lt;/version&gt;
  56. &lt;scope&gt;test&lt;/scope&gt;
  57. &lt;/dependency&gt;
  58. &lt;/dependencies&gt;
  59. &lt;build&gt;
  60. &lt;plugins&gt;
  61. &lt;plugin&gt;
  62. &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
  63. &lt;artifactId&gt;spring-boot-maven-plugin&lt;/artifactId&gt;
  64. &lt;/plugin&gt;
  65. &lt;/plugins&gt;
  66. &lt;/build&gt;
  67. &lt;/project&gt;

When I run the test using mvn test, this is the error I get:

  1. [ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.325 s &lt;&lt;&lt; FAILURE! - in org.example.SampleControllerTest
  2. [ERROR] testGetSample(org.example.SampleControllerTest) Time elapsed: 1.288 s &lt;&lt;&lt; ERROR!
  3. java.lang.AbstractMethodError: Method io/restassured/internal/ResponseSpecificationImpl.getProperty(Ljava/lang/String;)Ljava/lang/Object; is abstract
  4. at org.example.SampleControllerTest.testGetSample(SampleControllerTest.java:20)

Thanks for any help in advance!

答案1

得分: 15

由于升级到rest-assured 4.3.0,Groovy的版本从2.5.7升级到了3.0.2,详见rest-assured/changelog.txt at master · rest-assured/rest-assured,您可以在pom文件中指定groovy版本。

  1. <properties>
  2. <rest-assured.version>4.3.0</rest-assured.version>
  3. <groovy.version>3.0.2</groovy.version>
  4. </properties>
英文:

Because of rest-assured 4.3.0 upgrade the Groovy from 2.5.7 to 3.0.2, see rest-assured/changelog.txt at master · rest-assured/rest-assured, you can specified the groovy version in pom file.

  1. &lt;properties&gt;
  2. &lt;rest-assured.version&gt;4.3.0&lt;/rest-assured.version&gt;
  3. &lt;groovy.version&gt;3.0.2&lt;/groovy.version&gt;
  4. &lt;/properties&gt;

答案2

得分: 9

似乎是REST Assured 4.3.0中的一个bug,您的代码在4.2.0版本中可以工作。

我没有找到已打开的问题。https://github.com/rest-assured/rest-assured/issues

英文:

It looks like a bug in REST Assured 4.3.0, your code works with 4.2.0 version.

I didn't find opened issue. https://github.com/rest-assured/rest-assured/issues

答案3

得分: 6

我使用了4.2.0而不是4.3.0...对我有效。

英文:

I used 4.2.0 instead of 4.3.0 .. it works for me

答案4

得分: 5

对于Maven项目,以下代码在Spring Boot项目中能够很好地工作:

  1. <properties>
  2. <groovy.version>3.0.7</groovy.version>
  3. <rest-assured.version>4.3.3</rest-assured.version>
  4. </properties>
  5. <dependencies>
  6. <dependency>
  7. <groupId>org.springframework.boot</groupId>
  8. <artifactId>spring-boot-starter</artifactId>
  9. </dependency>
  10. <dependency>
  11. <groupId>org.springframework.boot</groupId>
  12. <artifactId>spring-boot-starter-test</artifactId>
  13. <scope>test</scope>
  14. </dependency>
  15. <dependency>
  16. <groupId>io.rest-assured</groupId>
  17. <artifactId>spring-mock-mvc</artifactId>
  18. <scope>test</scope>
  19. <exclusions>
  20. <exclusion>
  21. <artifactId>groovy</artifactId>
  22. <groupId>org.codehaus.groovy</groupId>
  23. </exclusion>
  24. </exclusions>
  25. </dependency>
  26. <dependency>
  27. <groupId>org.codehaus.groovy</groupId>
  28. <artifactId>groovy</artifactId>
  29. <version>${groovy.version}</version>
  30. </dependency>
  31. <dependency>
  32. <groupId>org.codehaus.groovy</groupId>
  33. <artifactId>groovy-xml</artifactId>
  34. <version>${groovy.version}</version>
  35. </dependency>
  36. <dependency>
  37. <groupId>org.codehaus.groovy</groupId>
  38. <artifactId>groovy-json</artifactId>
  39. <version>${groovy.version}</version>
  40. </dependency>
  41. <dependency>
  42. <groupId>io.rest-assured</groupId>
  43. <artifactId>json-path</artifactId>
  44. <version>${rest-assured.version}</version>
  45. <scope>test</scope>
  46. </dependency>
  47. <dependency>
  48. <groupId>io.rest-assured</groupId>
  49. <artifactId>xml-path</artifactId>
  50. <version>${rest-assured.version}</version>
  51. <scope>test</scope>
  52. </dependency>
  53. </dependencies>
英文:

For Maven projects, the code below works well with Spring Boot projects:

  1. &lt;properties&gt;
  2. &lt;groovy.version&gt;3.0.7&lt;/groovy.version&gt;
  3. &lt;rest-assured.version&gt;4.3.3&lt;/rest-assured.version&gt;
  4. &lt;/properties&gt;
  5. &lt;dependencies&gt;
  6. &lt;dependency&gt;
  7. &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
  8. &lt;artifactId&gt;spring-boot-starter&lt;/artifactId&gt;
  9. &lt;/dependency&gt;
  10. &lt;dependency&gt;
  11. &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
  12. &lt;artifactId&gt;spring-boot-starter-test&lt;/artifactId&gt;
  13. &lt;scope&gt;test&lt;/scope&gt;
  14. &lt;/dependency&gt;
  15. &lt;dependency&gt;
  16. &lt;groupId&gt;io.rest-assured&lt;/groupId&gt;
  17. &lt;artifactId&gt;spring-mock-mvc&lt;/artifactId&gt;
  18. &lt;scope&gt;test&lt;/scope&gt;
  19. &lt;exclusions&gt;
  20. &lt;exclusion&gt;
  21. &lt;artifactId&gt;groovy&lt;/artifactId&gt;
  22. &lt;groupId&gt;org.codehaus.groovy&lt;/groupId&gt;
  23. &lt;/exclusion&gt;
  24. &lt;/exclusions&gt;
  25. &lt;/dependency&gt;
  26. &lt;dependency&gt;
  27. &lt;groupId&gt;org.codehaus.groovy&lt;/groupId&gt;
  28. &lt;artifactId&gt;groovy&lt;/artifactId&gt;
  29. &lt;version&gt;${groovy.version}&lt;/version&gt;
  30. &lt;/dependency&gt;
  31. &lt;dependency&gt;
  32. &lt;groupId&gt;org.codehaus.groovy&lt;/groupId&gt;
  33. &lt;artifactId&gt;groovy-xml&lt;/artifactId&gt;
  34. &lt;version&gt;${groovy.version}&lt;/version&gt;
  35. &lt;/dependency&gt;
  36. &lt;dependency&gt;
  37. &lt;groupId&gt;org.codehaus.groovy&lt;/groupId&gt;
  38. &lt;artifactId&gt;groovy-json&lt;/artifactId&gt;
  39. &lt;version&gt;${groovy.version}&lt;/version&gt;
  40. &lt;/dependency&gt;
  41. &lt;dependency&gt;
  42. &lt;groupId&gt;io.rest-assured&lt;/groupId&gt;
  43. &lt;artifactId&gt;json-path&lt;/artifactId&gt;
  44. &lt;version&gt;${rest-assured.version}&lt;/version&gt;
  45. &lt;scope&gt;test&lt;/scope&gt;
  46. &lt;/dependency&gt;
  47. &lt;dependency&gt;
  48. &lt;groupId&gt;io.rest-assured&lt;/groupId&gt;
  49. &lt;artifactId&gt;xml-path&lt;/artifactId&gt;
  50. &lt;version&gt;${rest-assured.version}&lt;/version&gt;
  51. &lt;scope&gt;test&lt;/scope&gt;
  52. &lt;/dependency&gt;
  53. &lt;/dependencies&gt;
  54. ```
  55. </details>
  56. # 答案5
  57. **得分**: 4
  58. 我还遇到了一个`java.lang.AbstractMethodError`,但是发生在另一个方法上。
  59. rest-assured 4.3 将其实现升级以使用[groovy 3][1],详见[rest assured的发布说明][2]。
  60. 在我的情况下,依赖解析将groovy降级为使用某个2.x版本。
  61. 如果你使用的是Maven:
  62. 你可以使用`mvn dependency:tree`来检查。如果存在冲突,将必要的groovy依赖项作为直接依赖项添加到你的项目中,版本为=>3.0.2。
  63. 如果你使用的是Gradle:
  64. 你可以使用`gradle dependencies`来检查。如果存在冲突,可以添加一个解析策略:
  65. ```groovy
  66. configurations.all {
  67. resolutionStrategy.eachDependency { DependencyResolveDetails details ->
  68. if (details.requested.group == 'org.codehaus.groovy') {
  69. details.useVersion "3.0.2"
  70. details.because "needed by rest-assured>=4.3"
  71. }
  72. }
  73. }
  74. ```
  75. 也许这可以帮助某人。
  76. [1]: https://groovy-lang.org/releasenotes/groovy-3.0.html
  77. [2]: https://github.com/rest-assured/rest-assured/blob/master/changelog.txt
  78. <details>
  79. <summary>英文:</summary>
  80. I also had an `java.lang.AbstractMethodError` but on another method.
  81. rest-assured 4.3 upgraded it&#39;s implementation to use [groovy 3][1], see [rest assured&#39;s release notes][2]
  82. In my case the dependency resolution downgraded groovy to use some 2.x version.
  83. If you use maven:
  84. You can check that using `mvn dependency:tree`.
  85. If there&#39;s a conflict, add the necessary groovy dependencies as direct dependencies with a version=&gt;3.0.2 to your project.
  86. If you use gradle:
  87. You can check that using `gradle depencencies`.
  88. If there&#39;s a conflict, then add a resolution strategy:
  89. configurations.all {
  90. resolutionStrategy.eachDependency { DependencyResolveDetails details -&gt;
  91. if (details.requested.group == &#39;org.codehaus.groovy&#39;) {
  92. details.useVersion &quot;3.0.2&quot;
  93. details.because &quot;needed by rest-assured&gt;=4.3&quot;
  94. }
  95. }
  96. }
  97. Maybe that can help somebody.
  98. [1]: https://groovy-lang.org/releasenotes/groovy-3.0.html
  99. [2]: https://github.com/rest-assured/rest-assured/blob/master/changelog.txt
  100. </details>
  101. # 答案6
  102. **得分**: 2
  103. ```xml
  104. 使用以下依赖项在 pom.xml 中引入 Rest Assured
  105. <dependency>
  106. <groupId>io.rest-assured</groupId>
  107. <artifactId>rest-assured</artifactId>
  108. <version>4.2.0</version>
  109. <scope>test</scope>
  110. </dependency>
  111. ```
  112. <details>
  113. <summary>英文:</summary>
  114. Use below dependency of rest assured in pom.xml
  115. &lt;dependency&gt;
  116. &lt;groupId&gt;io.rest-assured&lt;/groupId&gt;
  117. &lt;artifactId&gt;rest-assured&lt;/artifactId&gt;
  118. &lt;version&gt;4.2.0&lt;/version&gt;
  119. &lt;scope&gt;test&lt;/scope&gt;
  120. &lt;/dependency&gt;
  121. </details>
  122. # 答案7
  123. **得分**: 2
  124. 如果您使用的是Rest Assured版本`4.3.2`,只需**显式**指定Groovy版本为`3.0.6`,即可解决该错误。
  125. &lt;rest-assured.version&gt;4.3.2&lt;/rest-assured.version&gt;
  126. &lt;groovy.version&gt;3.0.6&lt;/groovy.version&gt;
  127. 祝您好运。
  128. <details>
  129. <summary>英文:</summary>
  130. If you use Rest Assured version `4.3.2`, just specify **explictly** the groovy version to `3.0.6` and that fixes the error.
  131. &lt;rest-assured.version&gt;4.3.2&lt;/rest-assured.version&gt;
  132. &lt;groovy.version&gt;3.0.6&lt;/groovy.version&gt;
  133. Good luck.
  134. </details>
  135. # 答案8
  136. **得分**: 1
  137. 原来 `io.rest-assured/spring-mock-mvc` 依赖与 `io.rest-assured/rest-assured` 依赖发生了冲突。一旦我从 `pom.xml` 中移除了 `io.rest-assured/rest-assured`,测试就成功运行了。
  138. 几年前,当我使用 REST Assured 版本 `3.1.1` 时,我可以同时保留这两个依赖,但可能更新的版本不允许这样做。
  139. <details>
  140. <summary>英文:</summary>
  141. It turns out that `io.rest-assured/spring-mock-mvc` dependency was conflicting with `io.rest-assured/rest-assured` dependency. Once I removed the `io.rest-assured/rest-assured` from `pom.xml`, the test worked successfully.
  142. A few years ago when I was using REST Assured version `3.1.1`, I could keep both of these dependencies, but perhaps newer versions don&#39;t allow this.
  143. </details>

huangapple
  • 本文由 发表于 2020年4月4日 04:50:39
  • 转载请务必保留本文链接:https://go.coder-hub.com/61020200.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定