我正在使用groovy 1.7.8。

我有以下代码:

public class StaticClass {
    public static String getStaticString(String string) {
        return "NOT WORKING"
    }
}

我的测试:
void testStaticMethod() {
    StaticClass.metaClass.'static'.getStaticString = { i ->
        "WORKING"
    }

    assert "WORKING" == StaticClass.getStaticString('test')
}

我无法通过考试。关于我在做什么错的任何想法吗?

最佳答案

尝试输入闭包:

StaticClass.metaClass.'static'.getStaticString = { String i ->
    "WORKING"
}

如果要覆盖某些内容,则需要完全匹配方法签名。

10-08 03:37