TDD练习
今天在收集中看到一道面试题,网络引用是:http://www.iteye.com/topic/954262。题是这样的:
?
如何编程实现:输入M,N两个数,从1至N开始循环数数,每数到M输出该数值,直至全部输出。例如M是3,N是20,那么相当有20个人,1,2,3循环报数,数到3的就打印出他的序号,直到所有这20个数全部输出为止。
题目摘自:http://jerval.iteye.com/blog/1068563
尝试使用TDD编写产品代码,在实现时发现测试覆盖率不够;有哪位大虾能说说测试粒度该怎样规划?
测试代码:
@Test public void manyPlayers() throws Exception { Deliver deliver=new Deliver(20); System.out.println(Arrays.toString(deliver.play(3))); }
这个叫测试么?
这不是测试,这是这个问题的答案~!虽然可读性比较强,但我觉得这个测试是有问题的,测试粒度太大;我应该如何着手编写粒度适中的测试,希望大家给出各自的意见~!