模拟getResourceAsStream()方法

时间:2014-07-11 00:57:40

标签: unit-testing junit mockito powermock

我有像这样的方法调用

class classname
    {
    void somemethod()
    {
    InpuStream someImputStream=classname.class.getResourceAsStream("some string");
    }
    }

有没有办法模拟方法调用?

由于

1 个答案:

答案 0 :(得分:2)

您可以先介绍一种返回输入流的方法

 class classname
        {
        void somemethod()
        {
           InpuStream someImputStream = getInputStream();
        }

        protected InputStream getInputStream() {
            return classname.class.getResourceAsStream("some string");
        }


        }

在您的测试用例中

classname testObject = org.mockito.Mockito.spy(new classname());
org.mockito.Mockito.when(testObject.getInputStream()).thenReturn(...);