首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有单元测试的敏捷

没有单元测试的敏捷
EN

Software Engineering用户
提问于 2016-05-30 18:33:06
回答 6查看 3.9K关注 0票数 27

如果您正在处理的代码库有0%的单元测试覆盖率,那么谈论“敏捷开发”或声称您正在应用“敏捷方法”有意义吗?(作为一个团队,你们对此没有采取任何行动)。

要说清楚:对我来说,这是没有意义的。在我个人的经验中,我发现单元测试是唯一允许您真正“敏捷”的工具(即响应更改、改进设计、共享知识等)。TDD是唯一带你去那里的练习。

也许还有其他的方法,但我仍然看不出它们是如何工作的。

EN

回答 6

Software Engineering用户

回答已采纳

发布于 2016-05-30 18:51:04

要变得迂腐,敏捷宣言或Scrum指南中没有提到任何技术实践,比如单元测试或TDD。因此,是的,从理论上讲,您可以提前交付,并且通常只关注协作和价值,而不需要它们,并称自己为敏捷,您甚至可能实际上具有敏捷性。

然而,在实践中,如果没有一个好的测试套件,几乎不可能每隔几周就将价值(投入到生产中)交付一次。这包括集成测试和单元测试。单元测试只进行到目前为止。这是S金字塔而不是长方形的原因。

如果没有测试作为一个安全网,您将要么在每个版本中引入许多回归错误,要么害怕重构。这两者都将极大地影响你继续以可持续的速度前进的能力。如果你不能保持你的步伐,或者在需要的时候改变方向(重新设计),那么你就没有敏捷性。毕竟,敏捷性是我们所追求的目标。

票数 37
EN

Software Engineering用户

发布于 2016-05-30 18:47:31

敏捷宣言简单地说:

过程和工具上的个人和交互

基于综合文档的工作软件

合同谈判中的客户协作

响应按计划进行的变更

没有提到单元测试。甚至12个项原则也没有提到测试。

因此,从技术上讲,不需要编写单元测试就有可能成为一个敏捷团队。然而,在实践中,很难看出团队如何在没有测试的情况下维护敏捷环境中的工作软件,以帮助他们进行不断的更改。

票数 30
EN

Software Engineering用户

发布于 2016-05-31 18:27:26

尽管没有像其他人在这里回答的那样直接描述单元测试或TDD或敏捷宣言中的任何测试,但我相信一个优秀的Scrum或开发人员将能够识别宣言中的一条语句。

工作软件超过全面的文件。

怎么会有人知道这个软件是否工作呢?宣言不需要明确说明测试这一术语。很简洁。

单元测试(在主题的上下文中)将使您的编码阶段在早期阶段缓慢,但随着您的进步,它将是值得的,使开发更快地向前推进。它为您在代码级测试上提供了良好的粒度控制,并使您的设计具有可伸缩性,使您相信您的软件正在工作,并且可以轻松地处理回归;这将使您的开发变得敏捷。

票数 9
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/319846

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档