先做人,后做事。多思考,多总结,多学习,多读书,多提问,多多易善。

软件测试经验与教训--阅读笔记--03 测试手段

上一篇 / 下一篇  2016-07-02 17:21:31 / 个人分类:测试经验

第3章 测试手段
本章的观点基本是结构化的,介绍其余内容的分类系统;本章不讨论主要如何使用手段,但是会足够详细描述一些实际使用的手段。
经验48-关注测试员、覆盖率、潜在问题、活动和评估的组合测试手段
五要素测试系统:测试员(进行测试的人),覆盖率(测试那些内容),潜在问题(测试原因、风险等),活动(如何测试),评估(怎么判定过还是不过)。所有测试都包括所有这五个要素。 谁测试?测什么?怎么测?测试问题?怎么判定?
经验49-关注测试员的基于人员的测试手段
用户测试:由将使用该产品的典型人员进行输入的测试;
a测试:测试小组执行的内部测试;
b测试:产品目标市场成员的测试员实施的用户测试;将客户试用代码看做是b测试;
强力测试:利用秘书、程序员、市场开发人员和任何人所实施的测试;
有关领域的专家测试:
成对测试:两个测试员在一起发现程序错误;
自用测试:全公司使用试用版软件;
经验50-关注测试内容的基于覆盖率的测试手段
可以根据在使用这些手段时已经掌握知识的不同,把这些手段按照所关注的问题进行多种
不同的分类;
1、功能测试:逐个测试每个功能,在做涉及多个功能的更复杂的测试之前,最好先做功能测试。特性或功能集成测试:一起测试多个功能,以检查功能一起执行的情况
2、菜单浏览:遍历GUI产品的所有菜单和对话框,使用每个可用的选项。
3、域测试:包含所有可能的函数变量取值。进行域测试时必须分析变量,然后再根据分析,以
这个变量作为输入或输出,测试涉及这个变量的每个功能。
4、等价类分析:认为等价的一组变量取值;如果相信一组测试用例“测试的都是相同的东西”
“如果其中一个有问题,其它测试也可能有问题”“如果一个没有问题,其它测试可能也没有问题”
5、边界测试:如果把成员映射到一组数字上,则边界值就是类的最小和最大值;
6、最佳代表测试:
7、输入字段测试大纲或矩阵:开发一组相当标准的测试用例。
8、用各种方式映射和测试编辑字段
9、逻辑测试:变量在程序中的关系
10、基于状态的测试:程序的状态要发生转换;
11、路径测试:
12、语句与分支覆盖率:
13、配置覆盖率:配置计划占计划运行的配置测试总数的百分比
14、基于规格说明的测试:常常包括手册、市场开发文档或广告等;
15、基于需求的测试:满足需求文档中的所有需求;
16、组合测试:相互组合测试两个或更多变量。通过程序得到的大部分好处都是
基于很多变量的交互,如果不在测试中一起改变这些变量,就会遗漏由不同的组合触发的错误。
经验51-关注测试原因(针对风险)的基于问题的测试手段
基于风险的测试至少有两个主要含义:进行风险分析是为了确定下一步要做的测试;为了显现错误进行风险分析;输入约束、输出约束、计算约束、存储约束
经验52-关注测试方法的基于活动的测试手段
回归测试:软件变更后重新执行;共有三种回归测试,分别为程序错误更正回归(程序更正有误);
老程序错误回归(老程序错误更正变为未更正);副作用回归测试(未曾发生的问题发生了);
脚本测试:手工测试;
冒烟测试:冒烟测试常常是自动化、标准的。检查预期没有问题的东西。
探索式测试:整个测试过程中,都要了解产品、产品的市场、产品的风险和怎样没有通过以前的测试。
不断创建并使用新测试。新测试比老测试更有力,因为新测试是建立在测试员持续增长的知识基础上的。
游击式测试:快速、有力的攻击。是一种探索式测试,通常有时间限制。
场景测试:四个属性,分别如下:测试必须是现实的,反映实际做的事;复合的测试,有一定挑战的包含多个功能;容易并且快速的显示是否通过测试;未通过测试,强烈要求修改程序。
场景测试:用例到处的测试,叫用例流试验或者测试试验
安装测试:各种方式,在可以安装该软件的不同类型系统上安装该软件。
负载测试:通过在面临很多资源要求的系统上运行,攻击被测程序或系统。高负荷情况下,可能失效。
长序列测试:一天,几天,几周,目标是发现短序列测试遗漏的问题。经常发现的错误包括越界指针,内存泄漏、栈溢出、超过两个特性之间的错误交互等。
经验53-关注测试是否通过的基于评估的测试手段
如果能够采集到一定的数据该如何评估;自校验数据:使用的数据文件带有使测试员能够确定输出数据是否被破坏的信息;与已保存的结果进行比较:回归测试是否通过,将当前的结果与之前的结果进行对比,如果以前的结果是正确的,现在的有所不同,这种差别可能就是新缺陷的表现。与规格说明或其它权威文档比较:不符合规格说明的都可能是错误;启发式一致性:一致性是评估程序的重要评判准则。七种主要的一致性,如下:与历史一致;与我们的想象一致;与
可比较的产品一致;与所声明的内容一致;与用户的预期一致;产品内部一致;与用途一致;
基于理念的测试:理念是一种评估工具,理念一般比被测软件更可信赖,因此值得花时间和精力检查理念所给出的提示。
经验54-根据自己的看法对测试手段分类
不管怎么样对测试手段分类,在实际进行测试时,仍然需要在五个要素方面进行决策。
测试手段附录
如何针对输入字段创建测试矩阵?
简单字段例程的,如不输入、清空字段、超出上限位数或字符数的数字或字符、0、有效值、下限值-1、下限值、上限值、上限值+1、远远低于下限值、远远高于上限值、下限位数或字符数的数字或字符、下限位数或字符数的数字或字符-1、上限位数或字符数的数字或字符、上限位数或字符数的数字或字符+1;远远高于上限位数或字符数的数字或字符、负数、非数字、错误的数据类型、表达式、在其它数据前加一个空格、在其它数据前加很多空格、在其它数据前加一个0、在其它数据前加很多0、在其它数据前加一个+号、在其它数据前加很多+号、非打印字符(如Ctrl+C)、操作系统文件名保留字符(如\*.;)、程序设计语言保留的字符、ASCII上半区字符、ASCII255、大写字符、小写字符、修饰键(如Ctrl、Alt)、功能键(如F2、F3)、不输入-等待-回车/制表键、输入一个数字-等待-回车、输入多个数字并使用删除键编辑-再删除-插入/覆盖、响应不同类型的中断时(如打印机活动、鼠标移动、文件存盘等)输入数字、输入一个数字-切换到另一个应用-再返回应用;上述列表叫做测试大纲,将列表转换为矩阵形式很有用;如何针对重复问题创建测试矩阵?字段只是有用矩阵中的一个例子,只要某种情况在项目内部和项目之间反复出现,都要花时间和精力制定一个测试大纲的基础。
例子中,大纲尝试把文件写入磁盘的各种失败方式:保存新文件、覆盖同名文件、在结尾处续接文件、用同名文件的新版本取代正在编辑的文件;转换到另一种文件格式;打印内容存盘、消息或错误日志存盘、保存临时文件等;为了创建类似大纲,建议至少要召开两次有同时参加的集体讨论;如何使用全对偶测试手段进行组合测试?组合测试要求一起测试多个变量。压缩测试数量是一个关键问题。从域划分开始,选出子域内最好的代表值;5*5*5=125获得全单值,5(取1)*5(取1)*5(取1)=5,常用于配置测试中,严重问题是会遗漏可预知的重要配置。额外关键配置;获得全对偶,5*5*5(取1)=25;如何分析与程序的某个部分或方面关联的风险?
质量属性,包括可获得性、能力、兼容性、并发性、标准符合性、可安装和可卸载性、可本地化、可维护性、性能、可移植性、可恢复性、可靠性、可伸缩性、安全性、可支持性、可测试性、可使用性;为了确定某个特征是否有缺陷,可以问自己如何证明它没有或与这些属性冲突。
问题起因,这些因素中的每一个看做是或大或小警告,并设计测试,以确定程序是否有这些因素所提示的脆弱性。新功能、新技术、新市场、学习曲线、变更后的功能、后期变更、贸然的工作、差的设计或没有可维护性的实现、疲倦的程序员、其他人员问题、意外溜入、外来品、预算外、模糊、矛盾的需求、未知需求、需求变化、复杂性、问题很多、依赖性、不可测试性、没有什么单元测试、到目前为止没有什么系统测试、依赖狭窄的测试策略、弱的测试工具、不可修改性、程序设计语言类型错误、使用错误大纲。

TAG: 软件测试 教训 经验

 

评分:0

我来说两句

zimingzim

zimingzim

努力做事,踏实做人,愿分享一切,与大家一起成长。

日历

« 2024-05-19  
   1234
567891011
12131415161718
19202122232425
262728293031 

我的存档

数据统计

  • 访问量: 9948
  • 日志数: 13
  • 建立时间: 2016-07-02
  • 更新时间: 2016-07-02

RSS订阅

Open Toolbar