单元测试如何改良项目代码的整体结构

来源:项目管理师    发布时间:2012-05-06    项目管理师视频    评论

  具有良好整体结构的代码,应该符合“低耦合”的特性,形象的说,就是“各家自扫门前雪、不管他人瓦上霜”,每一个函数、每一个类、每一个模块,都应该只做自己该做的事,不要把应该由“其他人”做的事扯进来。具有良好整体结构的代码就具有“可测性”,否则就不具有“可测性”。
  系统分析和架构设计做得比较好的项目,所实现的代码一般具有比较好的整体结构,应该首先在这方面下功夫。另一方面,单元测试是“隔离”的测试,可以说,“隔离”是单元测试的最基本特性,不能“隔离”的代码,单元测试也就难于进行。通常,“低耦合”的代码可以隔离,具有不当的高耦合特性的代码难于隔离,因此,单元测试能够及时地发现不当耦合,推动代码重构,从而保证了代码具有良好的整体结构。
  具体来说,如果代码包含不当耦合,当这些代码加入测试工程后,会产生编译错误,或者需要打桩才能测试,从而将不当耦合暴露出来。发现问题后,重构代码、消除不当耦合一般不难,消除不当耦合后,单元测试就可以顺利进行了。

  下面是几种典型的不当耦合:
  把代码写在界面类中
  问题:如果把业务代码写在界面类中,测试时把界面类加入测试工程,会产生编译错误。
  解决:把业务代码独立出来,写到相应的实体类中,对这些实体类进行测试。界面类只负责数据的显示和接受用户的输入,具体的计算由实体类负责。
  说明:把业务代码写在界面类中,这些代码将很难管理和维护,复用就更谈不上了,这是一定要避免的。采集者退散
实体类混合了边界代码

上一页12下一页

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答