0

我有 REST Assured 在我们的一个 JAR 项目中工作。现在我正在尝试在我们的 WAR 项目中添加一个类似的测试类。

我将 REST Assured 添加到 WAR 项目中:

<dependency conf="test->default" org="com.jayway.restassured"
    name="rest-assured" rev="1.8.1"/>

我在测试类路径(asm-4.0, asm-analysis-4.0, asm-commons-4.0, asm-tree-4.0, asm-util-4.0)上也有 ASM;提到这一点,因为我的问题的唯一搜索结果表明与 ASM 有关系。

当我运行我的测试时,它给出了以下错误:

java.lang.NoSuchMethodError: org.codehaus.groovy.runtime.ScriptBytecodeAdapter.castToType(Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
    at com.jayway.restassured.internal.ResponseParserRegistrar.<init>(ResponseParserRegistrar.groovy)
    at com.mycompany.testSomething(SomethingTest.java:50)

我已将测试最小化为以下内容:

@Test
public void testSomething() {
    ResponseParserRegistrar r = new ResponseParserRegistrar();
}

显然,我没有直接需要创建ResponseParserRegistrar.

您的帮助将不胜感激!

4

2 回答 2

0

查看https://code.google.com/p/rest-assured/wiki/FAQ上的常见问题解答 #2 ,这将解决您的类路径问题。另外,我鼓励您升级到较新的版本,因为 1.8.1 确实很旧。

于 2014-03-11T19:59:03.197 回答
0

服务器可能无法读取您的方法,或者它需要一些参数。

当程序尝试调用不存在的类方法时,会抛出 NoSuchMethodError。该方法可以是静态的,也可以是实例方法

于 2018-09-07T20:13:40.340 回答