How does this code work for JUnit in JAVA?
<p>I have the following code for JUnit testing:</p>

<pre><code>import static org.junit.Assert.assertEquals;
import org.junit.Before;
import org.junit.Test;
public class JUnitHelloWorld {
    protected String s;
    @Before
    public void setup() {
        s = "HELLO WORLD";
    }
    @Test
    public void testHelloWorldSuccess() {
        s = s.toLowerCase();
        assertEquals("hello world", s);
    }
    // will fail even if testHelloWorldSuccess is called first
    @Test
    public void testHelloWorldFail() {
        assertEquals("hello world", s);
    }
}
</code></pre>

<p>Now, according to the comment, why will the second method fail even if the first method is called first? isn't the first method changing the value of s to lowercase?</p>
