0

这是多项式的添加方法

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() {
........
........

}
4

2 回答 2

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 继承而来的。)

于 2011-04-02T23:52:19.113 回答
0

除了大卫的回答,我建议您使用此处描述的自定义断言模式。此外,我会考虑对输入和预期数据使用参数化测试,如此处所述,并使用一些 JUnit 特定示例,如下所示。

希望这可以帮助!

于 2011-04-03T00:48:31.180 回答