在项目中途实施单元测试和验收测试
Posted
技术标签:
【中文标题】在项目中途实施单元测试和验收测试【英文标题】:Implementing Unit Testing and Acceptance Testing Halfway Through A Project 【发布时间】:2010-09-23 06:21:27 【问题描述】:我现在在维护网站时非常头疼。大多数情况下,事情最终会在几次更新后中断。这个网站是由我们团队的两名开发人员创建的,然后转给了我。考虑到我的项目进行到一半,我想知道是否可以进行单元测试和验收测试。
现在编写测试需要很长时间吗?这是否实用或有其他测试方法吗?
【问题讨论】:
【参考方案1】:引入测试永远不会太早,越早开始发现错误就越早。
我将从两个不同的角度进行测试。首先,如果您有一些相当独立的 Java 类用于业务逻辑和数据处理等事务,我会开始为它们创建 JUnit 测试,以解决内部代码问题。
其次,我希望为业务指定的用例创建测试。这些很可能在 Selenium 之类的东西中完成,因为您希望测试遵循用例指定的与网站的交互。将细节留给幕后的 JUnit 测试。这些是对功能的高级确认。
所有这些都需要时间,管理层不太可能允许您只做几个或几周或更长时间的测试。相反,最有可能的处理方法是边做边做。填写您的时间报价以进行修复和新功能,以允许编写测试。请记住,编写测试可能需要 50% 或更多的时间,尤其是当您开始填写测试时。一旦你拥有了广泛的套件,时间就会稍微缩短一些,但即便如此,有些测试也比代码更难编写。但它们是值得的。
【讨论】:
另外,甚至不要尝试测试所有内容;相反,在你去的时候建立你的测试套件。专注于现有的错误(编写一个失败的测试,然后让测试通过)和你怀疑的代码部分。好的,额外怀疑。【参考方案2】:我同意德里克的观点。永远不会太晚。为您的测试创建框架。可能一个项目用于集成测试,一个项目用于单元测试。由于您已经很晚了,因此请专注于集成测试,这将使您能够在部署之前对解决方案进行健全性测试。您将很快从中受益。随着错误的出现,这也将为您提供更轻松地重现错误并更快地创建修复程序的基础架构。
【讨论】:
以上是关于在项目中途实施单元测试和验收测试的主要内容,如果未能解决你的问题,请参考以下文章