0

我在 Eclipse 中有一个简单的 JUnit 测试。

public class HelloTest extends TestCase {
    CalculatorEngine ce;

    public HelloTest(String name) {
        super(name);
    }

    @Override
    protected void setUp() throws Exception {
        super.setUp();
        ce = new CalculatorEngine();
    }

    @Override
    protected void tearDown() throws Exception {
        // TODO Auto-generated method stub
        super.tearDown();
        ce = null;
    }

    public void test1() {
        assertTrue(ce.doCalculation("1+5").equals("2"));
    }
}

测试失败,因为 1+5 不等于 2。如果我将 1+5 更改为 1+1,则测试成功。

如何从 JUnit 获得一些反馈/输出以确定测试失败时的结果?换句话说,有什么方法可以发现 ce.doCalculation("1+5") 返回 6 而不是 2?

4

2 回答 2

3

You could use the assertEquals method for your check

assertEquals("Unexpected result!", 2, ce.doCalculation("1+5"));

(available to check/compare most types - have a look at the API documentation).

于 2012-01-30T20:05:21.713 回答
1

您还可以使用assertThat api 编写更多描述性测试,例如:-

assertThat(1, is(2))

或者

assertThat(1, is(not(2))
于 2012-01-30T20:13:06.433 回答