IT技术博客大学习 共学习 共进步

如何当好测试组长(1)-制定测试计划

idv2 2009-12-08 23:10:19 浏览 4,301 次

    每个软件都要进行测试,每个软件公司也都会进行测试,但通常,测试都被当作最简单、最没有技术含量的工作,搞技术的人不愿意做,全都交给一群新人。其实测试是软件质量的最后一道关卡,没有测试,软件的质量很难保证。

    测试的过程可以分为计划、分析、设计、实现、执行、报告这几个阶段。诚然,执行测试的确不需要多少技术,新人经过一两天培训就能上手。但是,计划、分析、设计、实现、报告等过程,没有几年的软件工作经验,是不可能完成的。下面先来说说测试计划。

    测试的目的、定义和范围

    制定测试计划时,首先必须明确的是测试的目的、定义和范围。

    一般来说,测试的目的有三种:

防止发生bug找出bug保证软件质量

    找bug的测试用例和保证质量的测试用例是完全不同的。比如,回归测试的目的是防止发生bug,每次产品发布都应该执行,所以应尽量让测试用例能自动执行,减少测试执行的工作量;而为了找出bug,就要尽可能全面地考虑各种特殊值、错误处理、安全问题等;而保证软件质量的测试,则应当模拟完整的业务流程。

    至于定义,也许你会觉得,“地球人都知道,有写的必要吗?”你可以去问问你的组员,单元测试、综合测试和系统测试是什么意思,可能十个人会给出十个答案。在流程完善的大公司里还好些,小公司里这种现象会很严重。所以有必要把大家对测试的认识统一起来。

    范围也是必须明确的因素。测试整个系统,还是特定的模块?在什么硬件、什么操作系统上测试?这些也都必须事先明确。

    测试的读者对象

    接下来还要明确,测试计划是给谁看的?可能你会认为是给测试者看的,那么该计划是否需要给客户看?是否其他项目干系人如上司、公司决策者会关心该计划?测试计划应该根据读者对象,写出读者最想知道的内容。

    测试的环境

    接下来就是测试环境了。这恐怕是最复杂的因素了:

操作系统是XP,Vista,还是Win7?Linux的话,是RHEL4,5还是CentOS?要不要支持Debian、SuSE等?浏览器是IE、Firefox还是Opera?IE的话需要测试什么版本?数据库是MySQL,Oracle还是SQLServer?硬件配置有什么要求?网络环境有什么特殊要求(如IP地址、网络拓扑结构、带宽等)?服务器和客户端各需要架设几台?它们之间如何连接?安装时使用的序列号是什么?

    稍有经验的人就会知道,各种测试环境的组合会让测试数量成倍增长。比如测试网站,操作系统XP + Vista + Win7,浏览器 IE6 + IE7 + IE8 + Firefox,组合起来就是3 x 4 = 12种环境,原本500项测试用例就会膨胀到6000条。这显然是不现实的。因此要找出最有效的组合方式,避免测试用例爆炸。

    比如这个例子中,我们知道Vista下没有IE6,Win7下没有IE6和IE7,这样就能减少3种环境。另外,不同操作系统下,只要浏览器相同,表现形式也几乎相同,所以不用测试所有组合情况,只需测试 XP + IE6、Vista + IE7、Win7 + IE8、Vista + Firefox四种环境即可。另外,这些都是客户端的测试,假如500个用例中有200项是服务器端的测试,那么这200项只需在一个环境中测试即可。这样最后的测试数量是 300 x 4 + 200 = 1400,比最初的6000项要少了许多。

    测试组的编制和日程

    此外,测试组的编制和日程计划也必须在计划中明确。谁负责写测试用例,谁负责执行测试,谁负责报告?现有的成员能否在规定的时间内完成?测试人员的能力是否达到要求?

    编制通常用组织结构图来表现:

testleader-01-01.png

    而任务责任分工可以用TRM(Task Responsibility Matrix,也称RAM――Responsibility Assignment Matrix)来表现。TRM中用行表示任务,列表示各个成员,行列交点处使用圆圈、三角等表示不同的责任。最简单的TRM如:

testleader-01-02.png

    日程计划可以用甘特图表现,这个就不再附图了。

建议继续学习

  1. Xvfb+YSlow+ShowSlow搭建前端性能测试框架 (阅读 55,340)
  2. 安全测试与渗透测试区别 (阅读 24,821)
  3. 使用Fiddler对手机应用进行抓包测试 (阅读 8,460)
  4. 服务器性能测试工具推荐 (阅读 7,901)
  5. 给Apache做压力测试时遇到的问题 (阅读 7,181)
  6. WEB性能测试工具推荐 (阅读 6,940)
  7. 可用性测试好助手——Morae软件的应用 (阅读 6,680)
  8. 12款很棒的浏览器兼容性测试工具推荐 (阅读 6,140)
  9. 性能测试工具sysbench简介 (阅读 5,901)
  10. 可用性测试的权衡之道(二) (阅读 5,720)