First time JUnit user: Why eclipse always shows error (Red indicator)

This is my first time doing/learning unit testing using JUnit eclipse.

Now : I've 2 classes:

public class Calculate {
    public int sum(int var1, int var2) {
        System.out.println("Adding values: " + var1 + " + " + var2);
        return var1 + var2;
    }
}

import org.junit.*;
import static org.junit.Assert.*;
import org.junit.Test;

public class CalculateTest {
    Calculate calculation = new Calculate();
    int sum = calculation.sum(2, 5);
    int testSum = 7;

    @Test
    public void testSum() {
        System.out.println("@Test sum(): " + sum + " = " + testSum);
        assertEquals(sum, testSum);
    }
}

Finally, every time (Every examples) I right click at, then

CalculateTest.java->Run as->JUnit Test

It shows me this instead:

enter image description here

While it should be something like this :

enter image description here

How to do it in the right way?

Upvotes: 0

Views: 530

Answers (2)

Namoz
Namoz

Reputation: 540

Just add hamcrest 1.3 library to your project and it should work fine !

Upvotes: 0

c0der
c0der

Reputation: 18792

The following (pretty much a copy of what you did) runs with no errors:

import static org.junit.Assert.assertEquals;
import org.junit.Test;

public class CalculateTest {

    Calculate calculation = new Calculate();
    int sum = calculation.sum(2, 5);
    int testSum = 7;

    @Test
    public void testSum() {
        System.out.println("@Test sum(): " + sum + " = " + testSum);
        assertEquals(sum, testSum);
    }

    public class Calculate {
        public int sum(int var1, int var2) {
            System.out.println("Adding values: " + var1 + " + " + var2);
            return var1 + var2;
        }
    }
}

If you run it with no errors: find the difference.
If it produces errors, what are they ?

Upvotes: 1

Related Questions