louis_lu 发表于 2007-1-8 21:33:21

Unit Test

unit test是软件开发过程中最常见的测试方法.
最近碰到个问题,让我对unit test的概念一下子模糊了.
今天也想请大家讨论一下:unit test中的unit(单元)到底是如何定义的?谢谢!

Skill.WeRrA 发表于 2007-1-9 00:15:23

建议你先把LLD与SRS结合起来,看LLD具体是怎样分布(分模块)实现SRS中的一系列功能的。不清楚的话可以与设计人员进行讨论,然后按照自己的计划划分出独立的待测模块。
一般按照功能划分模块会比较清楚,如果一个模块内就是用一个函数实现功能的话那最好(直接把这个模块作为单元进行测试),如果一个模块内用几个函数实现,而且函数之间互相调用的话,就看函数是否简单,如果简单的话也可以合并作为一个单元进行测试。如果比较复杂的话就分别把一个个函数作为单元进行测试。
考虑到代码讲究高内聚低耦合的设计思路,一般有经验的程序员会尽量把一个功能在一个函数或一个模块里就实现,尽量不要跨模块实现。所以一般还是比较容易划分测试单元的。不过划分的同时可以考虑简单就合并的原则,因为做单元测试要设计driver和stub,这个比较麻烦,分太多的话增加测试工作量,另外要考虑测试策略的选择(自顶向下,自底向上等),这取决于开发员的开发进度和方式。
纯理论讲讲,偶没实际经验哈,能帮你最好:)

god 发表于 2007-3-1 23:15:46

单元测试(Unit Testing)的'Unit'概念

间而言之:
不同项目的单元测试、集成测试、系统测试里都有“模块”概念,只是划分方式不容、侧重点不同。
在小项目里一个单元也许只由若干个函数组成;在庞大的项目里,一个单元也许包括好多模块、类、函数等。
参考不同项目的SRS-HLD-LLD,就会深入理解的。
页: [1]
查看完整版本: Unit Test