title: What can cause JUnit to disregard @Ignore annotations?
body: <p>I just used MyEclipse to automatically generate some JUnit test cases. One of the generated methods looks like this:</p>
  
  <pre><code>@Ignore("Ignored") @Test
  public void testCreateRevision()
  {
      fail("Not yet implemented"); // TODO
  }
  </code></pre>
  
  <p>I added the <code>@Ignore</code> annotation manually. However, when I run the test, JUnit lists that method, and others like it, under "failures," rather than ignoring them (related: <a href="https://stackoverflow.com/questions/3425995/whats-the-difference-between-failure-and-error-in-junit">What&#39;s the difference between failure and error in JUnit?</a>). And it displays the "Not yet implemented" message instead of the "Ignored" message. Clearly, <code>fail()</code> must be getting called, and therefore, the <code>@Ignore</code> assertion is not working.</p>
  
  <p>What's going on here? Is there a setting I need to enable for this to work?</p>
  
  <p><strong>EDIT :</strong><br>
  Things I have considered/tried so far:</p>
  
  <ul>
  <li>I am using JUnit 4, so it's not a version problem.</li>
  <li>I am importing <code>org.junit.Ignore</code>, so it's not a case of the wrong <code>Ignore</code> being used.</li>
  <li>I have tried using <code>@Ignore</code> alone, <code>@Ignore @Test</code> and <code>@Ignore("message") @Test</code>; all fail.</li>
  </ul>
  
  <p><strong>EDIT 2 :</strong><br>
  I created the tests with MyEclipse, via <code>New &gt; Other; Java &gt; JUnit &gt; JUnit Test Case; New JUnit 4 test</code>, and the library in my build path is JUnit 4. I'm building with ant and actually running the case with MyEclipse.</p>