我在一家小公司工作,担任单人开发人员。实际上,我是该公司唯一的开发人员。我有几个(相对)定期编写和维护的大型项目,但是没有一个项目可以支持它们。在开始新项目时,我经常想知道是否应该尝试TDD方法。这听起来是个好主意,但老实说,我永远无法证明所涉及的额外工作。
我努力工作以在设计中具有前瞻性。我意识到,肯定有一天另一位开发人员将不得不维护我的代码,或者至少要对其进行故障排除。我将事情保持尽可能简单,并评论和记录难以掌握的事情。而且事实是,这些项目没有那么大或太复杂,以至于一个体面的开发人员很难理解它们。
我看到的许多测试示例都涉及细节,涵盖了代码的所有方面。由于我是唯一的开发人员,而且我非常接近整个项目中的代码,因此遵循写后手动测试模式的效率要高得多。我还发现需求和功能的变更足够频繁,以至于维护测试会给项目增加相当大的阻力。原本可以用来解决业务需求的时间。
因此,我每次都得出相同的结论。投资回报率太低。
我偶尔会进行一些测试,以确保我正确编写了算法,例如根据员工的聘用日期计算他们在公司的工作年限。但是从代码覆盖率的角度来看,我已经涵盖了大约1%的代码。
在我的情况下,您是否仍会找到一种使单元测试成为常规做法的方法,还是我有理由避免这种开销?
更新: 关于我的情况,我遗漏了一些东西:我的项目都是Web应用程序。为了覆盖我的所有代码,我必须使用自动化的UI测试,在这个领域中,与手动测试相比,我仍然没有太大的收获。