PowerMock和Mockito不能为TestNG工作



我有一个带有静态方法的实用程序类

public class A {
    public static boolean test1(){
           // Do something
           return true;
    }       
}

我正在尝试使用powermockit模拟test1并使用TestNG进行测试

@PrepareForTest(A.class)
public class UnitTest{
   @Test
   public void testTest1() {
      PowerMockito.mockStatic(A.class);
      when(A.test1()).thenReturn(false);
   }
}

https://code.google.com/p/powermock/wiki/TestNG_usage我就是这么做的。

然而,在"when(a.t test1()). thenreturn (false);"中,它在Mockito期间调用实际的方法test1()。设置test1()方法时。因此,我认为设置不正确,它不能将类A识别为Mock

我在这里做错了什么吗?

My dependencies in pom.xml -

<dependency>
   <groupId>org.powermock</groupId>
   <artifactId>powermock-api-mockito</artifactId>
   <scope>test</scope>
   <version>1.6.2</version>
</dependency>
<dependency>
   <groupId>org.powermock</groupId>
   <artifactId>powermock-module-testng</artifactId>
   <version>1.6.2</version>
   <scope>test</scope>
</dependency>

在@Damien Beaufils的评论之后,我试图谷歌更多,最终在powermock问题中找到了一个帖子;谷歌小组描述了同样的问题。

解决方案是您的测试应该扩展PowerMockTestCase(从testng powermock moduleorg.powermock.modules.testng导入)

更多信息- code.google.com/p/powermock/issues/detail?id=54#c9

相关内容

  • 没有找到相关文章

最新更新