如何编写一个junit测试用例添加方法?
问题描述:
这里是多项式如何编写一个junit测试用例添加方法?
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方法和测试用例add方法始于
public void testAdd() {
........
........
}
答
这里的一些基础知识...
单位的总体思路测试是比较“你想要什么”和“你得到什么”。一个简单的说法就是像
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,和朋友,都是静态访问从测试用例,其中大部分单元测试的下降。)
答
由于除了大卫的回答,我建议你使用自定义的断言模式描述here。另外,我会考虑使用here所述的输入数据和预期数据的参数化测试,并使用一些JUnit特定示例,如the following。
希望这会有所帮助!
你的问题具体是什么?你不知道如何使用JUnit进行测试,或者不知道要测试什么行为或者如何测试add的行为? – 2011-04-02 23:55:24