如何在有限的时间内编写完整有效的软件测试用例?

发表于:2009-03-06来源:作者:点击数: 标签:软件测试时间编写
在软件测试工作中,有一种直接拿到软件就测试的做法,它已经被大家认为是无效的 软件测试 ,那么怎么分配时间来完成 软件测试用例 的编写,并且还要在有限的时间里?欢迎大家进行讨论与交流! 分析这个问题,我想先从两个方面回答: 1.如何在有限的时间内完成
在软件测试工作中,有一种直接拿到软件就测试的做法,它已经被大家认为是无效的软件测试,那么怎么分配时间来完成软件测试用例的编写,并且还要在有限的时间里?欢迎大家进行讨论与交流!


        分析这个问题,我想先从两个方面回答:
        1.如何在有限的时间内完成测试用例       
         2.如何编写完整有效的测试用例
        有限的时间顾名思义工时不足。那么凡事都是有果必有因,解决问题就要先找到其原因,并加以解决,问题就会迎刃而解。
        在软件行业中,时间是一个非常重要的概念,时间有限也是经常提到的一个词,归其产生原因不外乎以下几点:
        1.项目经理缺乏项目管理经验,对项目工期估计不准确,导致工时吃紧,时间有限。
        2.项目开发人员(包括测试小组人员)缺乏实际工作经验或者说知识匮乏,相比之下不能在相等的时间内完成自己的任务,导致时间有限。
        3.项目开发周期已经确定,但由于客户的临时需求变更导致的工作量增大,无法继续在规定的时间内完成任务,导致时间有限。
        4.社会关系导致的公司内部人员拉帮结派,出现的争功躲弊的人群在有权利条件的基础上为夺取管理阶层对自己的好感,谎报项目的开发周期,致使承诺的工时远远低于实际工时,导致时间有限。
        5.其他原因(事假、病假、人员变动、突发事件等)而导致的项目人力资源不足,时间有限。
        用CMMI的理念讲以上这些原因就是风险,针对这些风险,就要采用风险识别,风险评估,风险减缓,风险跟踪将问题扼杀在萌芽中。
        第一,根据风险检查表,识别出项目的风险(时间不足)
        第二,估计风险严重性、风险可能性、风险系数(以上列举的5条分别进行评估)
        第三,对于风险系数超过“容许值”的每一个风险,都应采取减缓措施(量化风险的严重性,定义容许值)
        第四,跟踪风险减缓过程,记录风险的状态
        第五,制定风险解决方案
        1.项目经理需提高系统分析能力,增加自身技能水平,提高预测准确度。必要时可以更换。
        2.提高工作人员自身技能水平,评估其工作能力,定期考核,安排适当人群执行适当工作。公司提拔的不算。
        3.严格控制需求变更,制定需求变更管理,需求发生变更要经过会议评审,必要时员工需加班工作。
        4.社会关系复杂,如果想被提拔,升职或加薪那就乖乖的加班工作。
        5.减少工作对单人的依赖,保证每份任务必须由两人或两人以上负责,突发事件另作处理。
        虽然回答没有针对如何在有限时间内编写测试用例,但以上答案完全可以解决这个问题了。
        回答了第一个问题,下面回答第二个问题。说一下怎么样设计完整有效的测试用例
        第一,覆盖率100%,保证完整性
        第二,对测试环境,用户环境,模拟用户环境,及之间的差别进行描述。
        第三,设计场景测试法虚拟业务流程
        第四,建立测试公共数据,并根据系统内部关系组织数据的关联性
        第五,其他人可以看懂你的用例,并且是可以执行的
        第六,如果有标准的用例模板,可以使用用例模板
        现在将这两个问题合二为一,不同的问题可以根据给出的答案互相结合找出解决问题的办法。
        但是根据我的经验,一般编写测试用例的时间都是很充足的,除非是某些项目为了应付监理公司,临时对项目的相关资料进行补充的时候才会出现这种情况。

原文转自:http://www.ltesting.net