测试用例说明书对客户和开发人员的重要性

摘要:测试用例说明书分成覆盖各个业务流程和预期的输入输出,前者这个有助于与客户沟通,挖掘需求;后者有助于与开发人员的沟通,提高编写符合要求的代码。

  正文:测 试用例说明书,通常定义为对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。在软件产品开发中用的非常多,但在项目开发中,重要 性进行经常被忽视,很多项目组都是不做的,或者是为了敷衍编写的。敷衍是有很多原因的,各方不重视测试,需求多变导致测试层本大幅增加、项目时间节点紧, 因此很多测试过程会被简化。很多项目组最后只会有下1-2个左右的测试人员,或者是开发人员做兼职测试,在编码结束后,就上系统点点,然后提交客户了;客 户验收也是同样,验收平台搭建好后,走走流程,可能脑袋里面会想,怎么走流程可以把所有的流程都过一遍么,缺乏系统和专业的考虑。

  软件开发,肯定比不上产品开发了,项目的成本、项目结点都是摆在那里的,要说服客户或者领导重视测试不是一朝一夕就能解决的。测试阶段肯定要简化的,但是测试用例说明书还是建议保留的,他的作用不是仅仅停留在测试的。

  测试,第一要求的尽可能是测试覆盖业务的所有流程,逻辑分支;第二是测试的依据,不管是覆盖流程、分支还是覆盖页面,都归集为预期输入和预期结果,输入后的结果不是预期的,就是有问题的。

   做需求有两个产物:需求规格说明书和页面DEMO,这都是需求静态的描述,你会发现很多客户在项目编码结束测试阶段后会提出很多新增需求和需求变更,有 些程序员会抱怨客户,其实这很大原因就是,静态的需求描述和DEMO很难让客户的思维有所发挥,业务是动态的,做业务的客户的逻辑性和构思不比专业做软件 的,只有等软件动态后才会想到真正的需求,谁都不希望最后一大堆改动,一堆人加班,一大堆风险。测试用例说明书能很好的弥补这个静态的问题,测试用例的业 务流程覆盖测试,动态的描述的业务操作步骤,而且在需求做完确认后就能编写了,因此在需求阶段就做完测试用例说明书,可以有效的改善提高需求设计的质量, 降低后期的需求变更。

  上面的作用,是对客户而言,对做需求而言的;而第二个作用是做开发人员而言的。编写好的基本设计交给开发人员开 发,经常会出现最后完成的代码不符合要求,问题可以归咎为开发人员理解有问题或者沟通有问题;也会出现开发人员不负责任,提交的代码问题未经自己测试,测 试的任务推卸给测试人员。问题出在哪里,能不能沟通更加准确,能不能让开发人员更加负责?基本设计有颗粒度到页面级别的,也有到API级别的,但是不管怎 么样,都可以分成预期输入和预期输出,在做完基本设计后,根据基本设计的颗粒度,设计页面或者API预期的输入和预期的输出后,就基本给开发人员定性,编 写完成的代码应该是怎么样的了,这个预期都是测试用例,明确告知开发人员,编写的代码只有达到这个预期后才算完成,可以提交给测试人员测试。通常,开发人 员在明白了预期的输入和输出后,对要编写的代码理解就更加深刻了。

  至于测试用例说明书如何写,到底是怎么样的颗粒度,这个我以后在整理,这篇只是说要它的价值所在和重要性。

  软件工程中明确写过,测试用例说明书编写在需求阶段和设计阶段,是经过无数项目的总结出来的,只是没体会到而已,这只能说自身功力的问题。

====================================分割线================================

最新内容请见作者的GitHub页:http://qaseven.github.io/

时间: 2024-09-16 07:59:03

测试用例说明书对客户和开发人员的重要性的相关文章

是否该让开发人员跟客户直接交流

导读:即使最出色的程序员也未必就有能力把他的知识传达到他的技术圈之外.是否让开发人员跟客户直接交流呢? 以下是文章内容: "如果你让我做这个,我宁愿辞职." 德米瞪着我,不是愤怒,更多的是焦虑.他显然被我的请求所震惊,我只是想让他跟一个客户打个电话,解释一下关于公司软件产品的几个技术性问题. 德米是我们开发团队的一个头头.他人很文静,知识丰富,当和他的开发组同事讨论问题时会变的非常活跃. 但有一点很明确.德米不喜欢跟办公室里非技术的人员做太多的接触. 通常,这没什么问题.然而,这回我想

走上开放之路: ASP开发人员的J2EE基础(下)

相关文章:走上开放之路: ASP 开发人员的 J2EE 基础(上) ASP/COM 和 J2EE 应用程序模型 接下来研究不同的应用程序体系结构,您可以使用这些体系结构开发 J2EE 应用程序并将 其与相应的 ASP/COM 应用程序体系结构关联起来. 使用 Java Servlets 编程:基础知识 编写 Java Servlets 就可以对来自 URL 的请求进行可编程控制.典型的 servlet 调用 类似于以下步骤: 客户机向 Web 服务器发出请求,将 servlet 命名为 URL

(译)开发人员经常犯的8个设计错误

设计师在抱怨开发人员不尊重Web标准,后台开发人员在抱怨为什么不可以增加一个空格.PM在抱怨为什么项目总是因为那些看似简单的问题而延期--如何才能提高后台开发人员与设计师以及前端开发工程师的合作效率?相信很多网站或软件开发公司都越到类似的问题. 从UED的角度而言,我们的天职是追求用户体验.我们应该尽力坚持自己应该坚持的东西.白鸦曾经说过,用户体验不只是UED的事情,而是整个开发团队乃至整个公司需要参与的事情. 我们不能只是抱怨,我们去理解开发人员.同样,我们做出努力,让开发人员去理解我们. 我

十五套专为开发人员打造的PHP资源库(1)

最近一段时间以来,PHP作为一款高效服务器端编程语言,开始在Web开发领域掀起又一股热潮.大家可能想象不到,根据2013年1月发布的一份调查报告显示,PHP语言已经被安装在全球超过2.4亿个网站以及210万台Web服务器之上.PHP的全称为"超文本预处理器",而且主要用于创建动态网络页面.不过,PHP还有着其它多种用途,并因此在开发人员群体及大规模企业当中拥有着极高人气.随着相关技术在各个领域的不断发展,PHP开发人员目前拥有非常旺盛的市场需求. PHP被用于在服务器之上托管Web服务

面向.NET开发人员的Ajax 技术平台策略(3)

ajax|策略|技术平台 基于Ajax 架构的Web应用框架 之前我提到过"似Ajax" 的架构,现在我要说的Ajax框架也就是指专门针对这种Ajax架构而提供的框架.目前,我还没有听说过特别好的这个领域的流行框架.但我知道我的身边,.NET领域,J2EE领域或PHP平台上都有这样的框架和应用,我认为,正是因为有很多这样应用,所以Ajax才会像某个模式一样,被撰有一个专门的名词.不过我感觉Ajax 渐渐变成了Ajax feature的代名词,变成了XMLHTTP的代名词,成了异步通讯,

面向 Java 开发人员的 Ajax: 探索 Google Web Toolkit

ajax|google|web GWT(请参阅 参考资料)采用了一种不寻常的方式进行 Web 应用程序开发.它没有采用客户端和服务器端代码库的普通隔离,而是提供了一个 Java API,该 API 允许创建基于组件的 GUI,然后编译它们,从而在用户的 Web 浏览器上显示它们. 与一般的 Web 应用程序开发体验相比,使用 GWT 更接近于使用 Swing 或 SWT 进行开发,它还试图将 HTTP 协议和 HTML DOM 模型抽象出去.实际上,应用程序最终几乎总是会呈现在 Web 浏览器中

面向Java开发人员的Ajax:Java对象序列化(1)

ajax|java对象 本文我们讨论 Ajax 开发的基础知识,但是将侧重于许多 Java Web 开发人员最关心的问题:为客户机生成数据. 多数 Java 开发人员已经把模型-视图-控制器(MVC)模式应用在他们的 Web 应用程序上.在传统的 Web 应用程序中,视图组件由 JSP 或者其他表示技术(例如 Velocity 模板)构成. 这些表示组件动态地生成全新的 HTML 页面,替代用户以前正在查看的页面,从而更新用户界面.但是,在 Java Web 应用程序使用 Ajax UI 的情况

PHP 开发人员:充实您的 XML 工具箱

xml PHP 对 XML 的支持随着 PHP 的流行不断在增强.可以从本文中找出近一打 PHP 开发人员可用的 XML 工具. 工具顾问 Craig Knudsen 还描述了一个从 PHP 内部访问更多 Java 工具的方法.PHP 对 XML 的支持始于版本 3.06,当时 James Clark 流行的基 于 C 的 expat 语法分析器首次作为 PHP 3 模块集成到了该版本.自那时起,不断地开发了许多用于 XML 的 PHP 模块和类:有关我在最近一次对目前供应工具调查中发现的一些工

IBM 开发人员解决方案:开发使用了 JavaBeans 和 JSP 组件的 portlet

js|解决 IBM 开发人员解决方案:开发使用了 JavaBeans 和 JSP 组件的 portlet 使用 Portal Toolkit Plugin for WebSphere Studio Application Developer V4.0.3 轻松实现它. Balu Ramachandran (balur@us.ibm.com)高级软件工程师,IBM2003 年 2 月 本文叙述了 WebSphere Studio Application Developer V4.0.3 能成为开发