一直感觉V模型有很大的问题。通过单元测试的代码,直接就进行集成测试是否合适?
单元测试通常是由开发完成的,如果由测试人员来完成,可能存在如下问题:
1)双方沟通的问题,根据开发人员的代码写单元测试代码肯定要理解开发的代码,这过程中需要有一定的沟通。
2)时间的问题。完整的单元测试的代码量很可观,需要投入很大的时间,相对而言通过写测试用例文档,直接执行的方式会显得高效多了。
3)和测试人员写代码能力的问题。
可开发的代码不经过测试人员,直接进行集成测试显然是不合适的,原因如下:
1)集成测试和单元测试的关注点是不一样的,而我们会发现很多开发人员做的单元测试仅涉及最基本的情况,显然这不符合单元测试代码设计要求,但如果仅仅以代码覆盖率而言,代码符合要求了,可这样的单元测试肯定是不完全的。所以单元测试阶段我认为也很有必要有测试人员加入。
2)每个测试阶段,都应该有一支专业独立的测试团队进行。开发人员内部自测的弊端我不用说大家也都应该知道。
3)本着BUG发现的越早,节约的成本越低的原则。
所以我认为在开发人员进行白盒单元测试后,加入测试人员进行的黑盒单元测试应该比较合适,通过黑盒单元测试后,再进行集成测试、系统测试...
黑盒单元测试我一直在做,发现这个阶段会存在很多BUG.特别你会发现一些设计上的BUG.这有些在后期的集成测试、系统测试可能会发现,有些可能就漏掉了,因为毕竟关注点不同。
单元测试是在软件开发过程中要进行的最低级别的测试活动,在单元测试活动中,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。 单元测试不仅仅是作为无错编码一种辅助手段在一次性的开发过程中使用,单元测试必须是可重复的,无论是在软件修改,或是移植到新的运行环境的过程中。因此,所有的测试都必须在整个软件系统的生命周期中进行维护。