java – 在JUnit测试中重复代码
发布时间:2020-12-15 02:04:45 所属栏目:Java 来源:网络整理
导读:在测试类中复制代码是“坏”吗?如你所见,我将驾驶记录添加到驾驶记录中,以便在多种方法中进行测试.将它提取到私有帮助器方法是否更好?或者更清楚地保持它是否像它一样?在这种情况下你做什么? @Testpublic void shouldRemoveAllDrivingRecords() { Durati
在测试类中复制代码是“坏”吗?如你所见,我将驾驶记录添加到驾驶记录中,以便在多种方法中进行测试.将它提取到私有帮助器方法是否更好?或者更清楚地保持它是否像它一样?在这种情况下你做什么?
@Test public void shouldRemoveAllDrivingRecords() { Duration duration1 = new Duration(1,30,45); Duration duration2 = new Duration(2,50,12); DrivingRecord drivingRecord1 = new DrivingRecord(230.0,duration1,"This was a long trip"); DrivingRecord drivingRecord2 = new DrivingRecord(300.0,duration2,"This trip is even longer."); drivingLog.addDrivingRecord(drivingRecord1); drivingLog.addDrivingRecord(drivingRecord2); drivingLog.removeAllDrivingLogs(); assertEquals(0,drivingLog.numberOfDrivingRecords()); } @Test public void shouldSumTheDistanceDriven() { Duration duration1 = new Duration(1,"This trip is even longer."); drivingLog.addDrivingRecord(drivingRecord1); drivingLog.addDrivingRecord(drivingRecord2); double expectedDistanceDriven = drivingRecord1.getDistance() + drivingRecord2.getDistance(); double totalDistanceDriven = drivingLog.getDistanceDriven(); assertEquals(expectedDistanceDriven,totalDistanceDriven,0.1); } 解决方法
在任何地方复制代码都是“坏事”.此代码是否因某种原因而重复,或仅仅是为了方便.如果有一个原因,你想要在两者中使用相同的数据并以相同的方式添加它,那么一个小的“设置”方法是有意义的.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |