三、我们公司的单元测试

  我们公司的单元测试才刚刚起步,质量体系中尚无明确的规范,程序员对单元测试的意识也较淡薄。虽然在推行单元测试上取得了一些进步,但很难落实到实际的环节上,很多都是走过场的。不少程序员觉得任务大,时间赶,人手少,一接到任务是先赶代码完成工作量了,这其实是很普遍的现象。而且,绝大部分程序员从骨子里不喜欢写单元测试,这却是不争的事实。我们公司的开发人员在单元测试上多是走过场,而测试人员也只涉及到存储过程的单元测试,且没有单元测试用例,测试方法存在误区,导致测试带有随意性,效率低下。

  要做好单元测试,还必须充分考虑到公司自身的实际情况。基于我们公司目前的诸多现状,结合项目具体实际情况,在公司某一项目中,对单元测试做了如下理论结合实际的应用。

  1、项目经理在项目计划的过程定义文件中明确单元测试作为本项目的过程,确定在单元测试的各个阶段的工作产物;

  2、项目经理制定单元测试计划,明确测试目标、测试方法、准入准则、准处准则、单元测试数据、单元测试工具、人力资源计划、进度计划;

  3、开发人员在编码前设计测试用例,并且准备单元测试代码及设计文档,项目组组织人员评审,测试人员必须参加;

  4、开发人员在编码完成提交产物前,必须做单元测试,可以是自测,也可以是开发人员互测,发现的缺陷必须提交缺陷库,并提交单元测试报告。在人力资源紧张时,可以由测试人员执行单元测试;

  5、有了单元测试的缺陷数据,我们可以分析,一般常见的缺陷有哪些类型,如何改进;还可以发现哪些开发人员的编码质量,为奖惩提供依据。

  四、结论和展望

  总而言之,单元测试将让我们的开发工作变得更加轻松,让我们对自己的代码更加自信。无论是项目的规模大小,无论是时间紧迫的项目还是时间宽裕的项目,只要代码不是一次写完永不改动,编写单元测试一定超值。我希望它能成为我们公司编码过程中不可缺少的一部分。

  单元测试仅仅是软件质量保证的一个环节,软件的质量由组织、流程和技术三个维度来决定,任何一个维度都不能单独决定软件的质量。好的组织结构可以保证流程的顺利实施,好的流程能提高软件开发的规范性和可控性,从而提高软件开发的效率和质量,而采用了好的技术和有好的技术的载体--人,则从根本上保证了软件的质量。

  该项目在落实以上措施后,达到了一下效果:

  1、在一定承担上提升了软件交付质量;

  2、测试部门反映:有效降低集成和系统测试投入的成本;

  3、项目执行周期比预期的缩短。

  因此,论证了单元测试在软件生产过程中作用。