0

仕事に取り掛かることができるかどうかを確認するために使用しているいくつかの単純なクラスがありますpowermock

import org.junit.Test;
import org.junit.runner.RunWith;
import org.powermock.api.easymock.PowerMock;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;

@RunWith(PowerMockRunner.class)
@PrepareForTest(Foo.class)
public class FooTest
{
    @Test
    public void testFoobar(){
        Foo test = PowerMock.createPartialMock(Foo.class, "foobar");
        PowerMock.replay(test);
    }
}

public class Foo
{
    public String foobar(String aString){
        return aString + " blah";
    }
}

この単体テストを実行しようとすると、次のように表示されます。

java.lang.NoClassDefFoundError: org/easymock/classextension/internal/ClassProxyFactory$MockMethodInterceptor
...

なぜこれを行うのかわかりません。助けてください。

4

1 に答える 1

3

PowerMock を使用する場合は、クラス パスにEasyMockを含めていることを確認してください。ダウンロード ページは、こちら にあります

PowerMock のWikiによると、EasyMock は依存関係であると記載されています。

于 2012-08-07T02:46:19.183 に答える