您的位置:首页 > 其它

重要的单元测试

2004-09-01 21:06 393 查看
以下代码

import java.util.Date;

import junit.framework.TestCase;

public class TestTest extends TestCase {

public static void main(String[] args) {
junit.swingui.TestRunner.run(PayrollTest.class);
}

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

public void testDate()

{

Date lastDay=new Date(2004,2,30);

Test t=new Test();

assertTrue(t.IsLastDayOfMonth(lastDay());

}

}

class Test{

final long oneDay = 24 * 60 * 60 * 1000;

boolean IsLastDayOfMonth(Date date) {

int m1 = date.getMonth();
int m2 = (new Date(date.getTime() + oneDay)).getMonth();
return (m1 != m2);

}

}

这个单元测试不通过,后来才知道原因,原来java.util.Date类的月份范围是0-11。3月份就是4月份,年份必须减1900。所以单元测试不能通过,从这里也可以看出单元测试有多么重要。如果没有单元测试,知道提交我可能也无法发现这个问题。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: