浅谈软件测试用例

发现:

  人来了,又走了!

  有篇博文如是说,大体意思是有些的程序员,中途转测试,但很快又转回程序员。为何会这样,难道说测试不值得他们一试吗?普遍流行说测试工作如何如何简单,就是会点点鼠标、按钮就能做的工作;然而,事实恰恰相反,这些老到的程序员却是因为测试工作的复杂而没有既来之,则安之的。

  软件测试乍看起来是件简单的工作,深入其中后,发现并不如所想,程序中各个模块之间的接口调用错综复杂(特别是大型程序),加之程序员的编写代码技巧以及个人习惯,使得一个程序有多种编程思路,只为实现功能,而不考虑代码的优化、效率、易读性以及接口之间的耦合关系,这样就会造成各种意想不到的bug,诸多因素都可能产生bug,应该怎么去测试,一个覆盖面比较全的测试用例文件是必不可少的;当然,程序中的各种复杂关系都是要在用例中考虑和体现的;

  测试用例是软件测试的核心,重要性是毋庸置疑的。但如何以最少的人力、资源投入,在最短的时间内完成测试,发现软件系统的缺陷,保证软件的优良品质,则是软件公司探索和追求的目标。每个软件产品或软件开发项目都需要有一套优秀的测试方案和测试方法。

  之前我理解的测试用例仅仅是覆盖程序面广的测试方案表,后来知道作为白盒测试的脚本也称作测试用例,因为脚本的执行过程其实就是测试用例的执行过程,每个具体功能的脚本都是一个用例;

  定义:

  测试用例(TestCase)目前没有经典的定义。比较通常的说法是:指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,并形成文档。

  特点,

  1、原理上可以完美的全面覆盖,但不具有显示意义;

  2、测试用例不能避免系统带来的问题,如内存等等;

  3、随需求变动;

  好的用例:

  不同的软件要设计不同的用例,以达到资源最优分化,诸如银行、医疗、航天、政府、科研类似软件具有高度安全性、保密性的软件,测试工作的工作量较其他软件相要大的多;对于一些个人应用软件相对优先级就会小很多;

  1、要让不懂程序的人能看懂,能根据用例进行程序测试工作;

  2、覆盖面全

  3、冗余步骤少

  4、简洁明了

  如何写?

  1、根据需求分析结果,编写每个小功能的测试用例;

  2、小功能->模块->模块间->系统;

  3、长流程;

  4、路径;

  5、特殊操作;

  设计方法:

  可以采用软件测试常用的基本方法:等价类划分法、边界值分析法、错误推测法、因果图法、逻辑覆盖法等设计测试用例。

  独具匠心的考虑方法;

  测试用例中的信息:

  简洁信息:编写时间、测试目的、定义术语、程序名称、程序说明、参考文档、版本号;

  正文内容:用例编号、模块名称、测试前提(环境)、用例级别、测试目的、操作步骤、预期结果、备注信息等等;

  测试的几个关键点:

  1、临界点

  2、互斥操作(touch)

  3、条件限制

  4、层次影响(一个界面的操作影响了之前木块的页面或者操作)

  测试用例不是一劳永逸的事情,但是最好的测试方案参考,因为程序不可能永远不变;

  对于脚本用例子,可以尝试为测试脚本编写测试用例,已确保脚本的正确性,提高测试准确度;

  评审与维护:

  1、评审,

  测试用例的覆盖面全不全,有无冗余,要有一个专门的机制进行评审,以确定测试用例的可用性;(项目经理、测试组、客户)

  2、维护

  包括了对用例的漏洞补充与及时更新;

  想法:如果对每次出现问题的位置在用例表上做标记,那么就能在长期使用中做到对模块设计者的评估;

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

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

时间: 2024-09-17 03:36:00

浅谈软件测试用例的相关文章

浅谈软件项目管理之测试

笔者从事软件行业相关工作将近十年,其中与测试相关时间有7年之久,现浅谈软件项目管理中测试的必要性,供大家参考. 一.测试的必要性 为什么需要测试,那是因为由于分工的精细化,软件开发必须经历客户.需求.设计.开发多个环节.为了保证最终的结果符合要求,上下游是需要确认的. 用户告诉我们:我需要什么?软件企业需要在理解正确.表达正确的情况下完成需求规则说明书,把客户的原始需求转变为IT需求,表达出能够提供什么 需求的下一环节是设计,设计主要是要要说清楚:我要让软件做什么.需要与前一环节确认理解正确了.

浅谈软件项目管理环境下的质量管理

浅谈软件项目管理环境下的质量管理 摘要:软件项目管理是为了使软件项目能够按照预定的成本.进度.质量顺利完成,而对成本.人员.进度.质量.风险等进行分析和管理的活动.软件项目的质量管理就是产出的软件,满足客户明确需求.隐含需求的能力的所有特性.在现实生活中,监控所有对质量有影响的关键点,采用有效的测量手段来管理软件的质量,从而实现软件项目的"高"质量.使软件项目管理较之其他项目管理而言有其特殊性.采用CMM标准可以确保软件项目的质量,CMM是美国卡纳基梅隆大学软件工程研究所提出的软件研发

浅谈功能测试用例

浅谈浅谈,各位都是测试用例设计方面的高手,本篇只是抛砖引玉,分享下我在测试过程中对测试用例设计和执行的一些感悟,也希望大家能有更好的观点分享. 首先是测试用例数据的来源,测试用例中的数据来源于需求,规范的需求人员会将用户的准确信息汇总传达给项目组的开发和测试人员(当然需求不准确是另一回 事),测试人员需要验证的是开发的实现是否符合需求的预定目标.在项目开始的时候,开发人员着手设计框架和编码,我们测试人员则排计划和准备测试用例.刚 开始的时候觉得没有需求文档一切行动就像失去目标一样.有时需求文档确

康华:浅谈软件可维护性问题

前言     很多包括自己在内的开发人员都会经常去借用(我们不用剽窃这个词了!呵呵)开源代码进行二次开发:或者在前辈的遗留代码下,继续修修补补.这种经历往往并不像看起来那么简单--有时看懂,进而修改别人的少许代码,都会觉得老虎天--无从下手,究其原因主要是代码晦涩,关系复杂,难以隔离影响等.    而这时我们或者抱怨前人代码写的愚蠢,垃圾:或者又会自惭自己编码水平太次.其实这种困境的起源除了自己笨以外,更多是因为代码的可维护性不够.    由于前不久和朋友齐永升注释<代码质量>一书时曾关注过代

浅谈软件验收测试

随着信息化的全面实施,软件业正迅速发展,软件的应用已渗透到各行各业,软件质量也越来越受到关注,本文将结合全面质量管理思想,谈谈软件质量保障交付阶段的安全锁-软件验收测试. 如同任何产品离不开质量检验一样,软件验收测试是在软件投入运行前,对软件需求分析.设计规格说明和编码实现的最终审定,在软件生存期中占据着非常突出的重要位置.正如山东省软件评测中心韩庆良主任所说:"验收测试,让软件隐形质量可视化." 软件验收测试概念:软件验收测试,让系统用户决定是否接收系统,是一项确定产品是否能够满足合

浅谈软件静态测试中的代码审查

摘要:本文描述了软件代码审查的作用.代码审查内容.代码审查过程,并列举一些常见代码审查问题. 关键词:软件测试:代码审查: 一.引言 软件测试常用方法可分为动态测试和静态测试,只有动态测试和静态测试有效结合,才能更好的完成软件测试工作.代码审查是软件静态测试中常用的软件测试方法之一,代码审查时,只要测试人员方法得当.足够细心,往往能够产生意想不到的效果. 二.代码审查的作用 代码审查是在不执行软件的条件下有条理的仔细审查软件代码,从而找出软件缺陷的过程. 代码审查可以找出动态测试难以发现或隔离的

浅谈功能测试用例模板设计

测试用例设计和执行是测试工作的核心,也是工作量最大的任务之一,设计良好的测试用例模板能提高测试用例的设计质量,便于跟踪测试用例的执行结果,自动生成测试用例覆盖率报告.这几年测试技术和理论有了长足的发展,就功能测试用例设计要素而言,样式上均大同小异,一般都包含主题.前置条件.执行步骤.期望结果等. 测试用例可以用数据库.Word .Excel .xml 等格式进行管理,市面亦有成熟的商业软件工具和开源工具等,对于一般中小软件企业,使用文档来管理测试用例是较为方便.经济的途径. Word 格式的文档

浅谈软件人机界面设计

设计 众所周知,软件是一种工具,而软件与人的信息交换是通过界面来进行的,所以界面的易用性和美观性就变得非常重要了,这就需要好好利用人机界面设计的原则及设计的方法.一般来说,完成软件人机界面设计需考虑以下问题: ----1)界面总体布局设计,即如何使界面的布局变得更加合理.例如,我们应该把功能相近的按钮放在一起,并在样式上与其他功能的按钮相区别,这样用户使用起来将会更加方便.  ----2)操作流程设计,即通过设计工作流程,而使用户的工作量减小,工作效率提高.例如:我们如何才能让用户用最少的步骤,

浅谈软件下载站有哪些盈利模式

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 虽然说现在的软件下载站不像之前那么火爆了,不过软件下载网站的盈利模式却有很多,所以对很多个人站长的吸引力还是比较大的,下面就让笔者给大家介绍几种常见的软件下载站的盈利模式!希望能够给大家做一下参考! 一:利用弹窗广告的模式来赚钱,虽然弹窗广告这种模式已经被很多正规的网站所抛弃了,不过对于垃圾网站来说还是有相当不错的诱惑力的,很多下载类的网站可