我在一个一年的java / J2EE项目上已经有两个月了,而且每次现有的JUnit测试都因为我而失败,那是因为JUnit测试已经过时或者错了......所以我想知道“这是什么如果他们失败的唯一时间是因为方法的名称已经改变,或者因为他们做错了“......
那么......我们应该在多大程度上实施测试用例,采用何种方法?在项目的什么时候,为什么?总结一下:告诉我有关测试用例的任何好的做法?
谢谢!
答案 0 :(得分:1)
你问了十个问题,这些问题可以填满一本大书
我试着回答一下:
的什么强>
单元测试主要用于模块测试,虽然它们也可以用于集成测试,但集成范围是有效的
的当强>
单元测试的发明者,引入了“测试第一”这个术语(提前编写测试用例),因为他所知道的sw开发人员大多是懒惰和无纪律的。如果他建议稍后进行测试,那么很多测试都不会被写入
我的方法是,在你完成30%后测试,否则你没有可用的结构来测试。我称之为“早期测试方法”
适用于
Junit测试对于用户界面测试不太有用,这将无法轻松实现
对于具有高集成特性的模块,单元测试有点难以编写(中央管理方法)
为了休息,他们非常有用。特别是他们专注于算法数学公式,所有类型的计算。
主要优点之一是通过编写单元测试,可以避免在现实代码中进行调试。你失去编写单元测试的时间,你通过避免调试获得的时间。
最多80%的源代码语句的单元测试覆盖率,单元测试不会产生额外的项目成本。
我的经验表明,即使是getter和setter也应该进行单元测试,因为每个类可以在2分钟内完成(在testGetterSetter()上使用)。去年,在制定者和吸气者中有两个严重的错误。
如果他们失败的唯一时间是因为方法的名称已经改变
如果你使用eclipse refactor->重命名,那么单元案例将包含在重构中,只要它们在同一个项目中,这是值得推荐的。
当然,源代码中的chnage会导致必要性将单元case,src和unit测试形式整合为一个单元。
最后,单元测试的一个主要优点是,当您创建包含一些更改的新版本时,您仍然知道所有单元测试都在运行。当你继承离开公司的工作形式的同事时,这尤其重要。