@RunWith(PowerMockRunner.class) vs @RunWith(MockitoJUnitRunner.class)
<p>In the usual mocking with <code>@Mock</code> and <code>@InjectMocks</code> annotations, the class under testing should be run with <code>@RunWith(MockitoJUnitRunner.class)</code>. </p>

<pre><code>@RunWith(MockitoJUnitRunner.class)
public class ReportServiceImplTestMockito {

     @Mock 
     private TaskService      mockTaskService;

     @InjectMocks 
     private ReportServiceImpl service;

         // Some tests
}
</code></pre>

<p>but in some example I am seeing <code>@RunWith(PowerMockRunner.class)</code> being used:</p>

<pre><code>@RunWith(PowerMockRunner.class)
public class Tests {
  @Mock
  private ISomething mockedSomething;

  @Test
  public void test1() {
    // Is the value of mockedSomething here
  }

  @Test
  public void test2() {
    // Is a new value of mockedSomething here
  }
}
</code></pre>

<p>could someone point it out whats the difference and when I want to use one instead of another?</p>