如何编写一个junit测试用于添加方法的案例?

时间:2011-04-02 22:54:08

标签: java junit polynomial-math

这是多项式的加法方法

public Polynomilal add (Polynomial poly){

//getA()..etc getters for the coefficients of the polynomial.

    MyDouble aVal=getA().add(poly.getA());
    MyDouble bVal=getB().add(poly.getB());
    MyDouble cVal=getC().add(poly.getC());
    Polynomial addedPoly=new Polynomial(aVal, bVal, cVal);
    return addedPoly;
}

并且add方法的测试用例以

开头
public void testAdd() {
........
........

}

2 个答案:

答案 0 :(得分:2)

以下是一些基础知识......

单元测试的一般想法是将“你想要的东西”与“你得到的东西”进行比较。一个简单的断言就像

assertEquals("it better work!", 4 /* expected */, 2 + 2);

如果你知道aVal应该是什么,你可以做

assertEquals("aVal should be this", <what you expecte it to be>, aVal);

“双”值有一个特殊的细节,因为舍入导致它们往往不完全符合您的预期,所以你说:

assertEquals("some double value", 1.555555d, 1.0d + 5.0d / 9.0d, .001); // within .001? ok!

无论如何,这是单元测试的要点。断言你可以看到的东西。非常方便。

(assertEquals和朋友们都可以从TestCase中静态访问,大多数单元测试来自TestCase。)

答案 1 :(得分:0)

作为大卫答案的补充,我建议你使用描述here的自定义断言模式。另外,我会考虑对here描述的输入和预期数据使用参数化测试,并使用一些JUnit特定示例,如the following

希望这有帮助!