探秘软件质量保证的五大法则

软件质量保证最佳经验

软件质量保证是指通过对软件的功能、性能和可靠性等质量要素进行验证,发现软件缺陷并帮助定位和修复缺陷,确保软件系统功能满足需求的活动。 IBM Rational根据多年软件工程研究和实践经验,认为通过在软件项目中执行如下最佳经验,可以有效提高软件质量,确保项目进度。

 强化开发人员测试

开发人员测试通常也称为单元测试,是指由开发人员对自己开发的代码进行测试。强化开发人员测试,可尽早发现软件代码缺陷,保证每个模块的质量,大大缩短后期模块集成测试和系统测试的时间,提高项目计划的准确性。此外,通过对测试程序进行有效的管理,可在应用的单元级进行回归测试自动化,从而确保软件项目能快速、高质量地实现新需求。

尽早引入性能测试

性能测试是指通过模拟大量虚拟客户端来访问被测服务器,从而发现系统在性能和可靠性方面的问题。软件系统的性能问题主要分为应用程序方面和系统配置方面。传统的性能测试通常在系统上线前才进行,这时即使发现系统在应用程序方面的性能问题,但迫于进度压力,也不可能去大量修改应用代码,而只能对系统配置进行升级或优化,有时会导致不得不增加硬件投资。因此我们建议在软件项目的早期就引入性能测试手段,对软件架构进行性能测试,从而尽早发现并及时解决系统在应用程序方面的性能问题。

实施测试管理自动化

测试管理是指对系统测试活动的管理,其主要目的是测准(有效选择运行测试用例,发现系统的缺陷)和测全(保证所有需求对被测试过)。 系统测试的依据是系统需求,系统测试人员只有准确把握需求信息,才能进行有效的测试。同时,测试人员的职责不仅仅是发现缺陷,还有帮助开发人员重现并解决缺陷的义务,应该为开发人员提供缺陷的相关信息,以帮助开发人员快速定位并解决问题。因此,测试管理不仅仅以测试用例为核心,还应考虑对需求和缺陷信息的管理,并建立需求、测试用例、测试脚本以及缺陷的关联。 测试管理自动化的主要目的是通过工具自动能获得软件质量以及测试过程的相关信息,从而及时有效地指导软件测试。通过测试管理自动化,测试人员能把更多精力关注在如何设计有效的测试用例,如何有效选择执行测试用例,从而保证系统质量。