If you use dependency injection through constructors and method parameters, it becomes easy to create your unitary test, i.e.:
@Component("sum")
public class Sum {
private int result;
public void sum(int first, int second) {
this.result = first + second;
}
public int getResult() {
return this.result;
}
}
public class SumTest extends TestCase {
public void testSumsCorrectlyLowNumbers() {
int expected = 1999;
Sum logic = new Sum();
logic.sum(1000, 999);
assertEquals(expected, logic.getResult());
}
}You can use Selenium to fully test your system through Junit testcases using an specific browser.