Testing - 软件测试的思维和技巧
01 - 测试员不仅仅是执行测试用例,对实际结果和预期结果进行比较
测试员其实是参与了设计和执行测试的各个环节:测试架构,环境搭建,测试用例等等,并确定预期输出。
大多数设计测试都是基于业务流程和原理的有效推断,或者测试员的有效经验。
02 - 黑盒并不是基于“无知”的测试
- 需要了解用户的期望和需要。
- 需要了解测试背景(业务流程、业务配置、测试与运行环境的区别、业务数据、接口交互等等)。
- 了解越多,了解的方式越多,越能够更好地测试。
03- 不要凭借所谓的“直觉”进行测试
直觉有很强的偏见性,是测试员自己的“本能感觉”。
直觉推断实际上是基于有效测试经验和对业务的了解,往往在测试初期发挥作用,测试的越深入细致,“直觉”发生偏差的可能性就越大!
可以把这种“直觉”当作指南,给出合理性证明。
当有“这是问题,因为它显然是问题”的想法时, 可考虑换一种方式: “这是可能是问题,因为观察到行为与需求存在矛盾, 需要做进一步的分析证明”。
04 - 不要急于测试复杂产品或功能
当要测试复杂和使人畏惧的功能集合时,可间歇进行。
可试着先研究复杂产品30分钟或一个小时,然后停下来干点别的。
不要担心在这段不长的时间内效率不高,如果觉得问题太多,则尽快退出.
经过几个轮次的陷入与退出,就会开始明白产品的模式和轮廓,很快就会在头脑中形成更系统、更具体地测试和研究策略。
05 - 运用试探法快速产生测试思路
试探法是一种经验规则,是一种基于经验做出猜测的方法。一组好的试探方法有助于很快地生成测试用例。
以下是采用试探法测试的一些例子:
- 边界测试。边界更有可能暴露规格说明的模糊问题
- 测试所有错误消息。错误处理代码与功能代码相比,一般比较弱
- 测试与程序员的配置不同的配置。程序员已经偏信自己的配置没有问题
- 运行比较难设置的测试。在其它条件相同的情况下,易于设置的测试更有可能已经被执行过
- 避免冗余测试。如果某个测试实际上是重复其它测试,就不会产生新的价值。
慎用陌生的试探法来做测试,可能会花费过多精力去熟悉测试方法本身。
在收集测试方法时,要了解每个方法背后的原理,以及是否适用于当前的测试需求。
06 - 保持清新的态度
测试员在理解了产品或者功能后,会在头脑中形成映射,并且头脑不再那么努力工作。
当非常了解产品后,会对产品做出更多的假设,但却很少地检查这些假设的合理性是否仍然存在。
这种情况对于测试至少有3点提示:
- 第一次接触产品或功能时,要特别注意使自己困惑和烦恼的地方。用户可能也有类似反应。
- 当与团队的新成员一起工作时,与他们一起测试。 观察他们在了解产品时的反应。
- 警惕陷入测试惯例。即使没有遵循严格的测试脚本,也可能对特点功能太熟悉,以至于以越来越窄的方式进行测试。在任何可能的地方引入多样性,或改由其他测试员负责。
Testing - 软件测试的思维和技巧的更多相关文章
- Testing - 软件测试知识汇总
软件测试知识梳理 基础概念 : http://www.cnblogs.com/anliven/p/6070000.html 测试分类 : http://www.cnblogs.com/anliven/ ...
- Testing - 软件测试知识梳理 - 探索性测试
定义 探索性测试(Exploratory Testing)是一种自由的软件测试风格,强调测试人员同时展开测试学习,测试设计,测试执行和测试结果评估等活动,以持续优化测试工作. 其特征有:即兴发挥,快速 ...
- Testing - 软件测试知识梳理 - 相关词汇
测试策略 描述测试工程的总体方法和目标:根据测试需求,描述在什么测试阶,依据什么测试要素和目标,进行什么种类的测试,使用什么样的测试方法和工具. 测试策略的制定主要包含如下内容: 确定测试过程要使用的 ...
- Testing - 软件测试知识梳理 - 测试阶段
估算 测试对软件工作量的估算的准确性 测试评估软件系统的状况的准确性 关注点: 不准确的估算 不适当的开发过程 不真实的状态报告 如何知道对工作量的估算是正确的 估算工作量的工具很容易出错 对软件工作 ...
- Testing - 软件测试知识梳理 - 测试方法
选择和使用测试方法和工具 按照测试需求用途(或测试技巧)选择 在软件开发生命周期和软件测试流程中适当地选择 按照测试人员实际技能选择 选择可提供的和可执行的 测试方法 类别及技巧 目标 使用方法 举例 ...
- Testing - 软件测试杂谈
Part-1 起步 测试是发现质量问题.分析.跟踪.推动与解决的过程. 1 熟悉业务,设计优质的测试用例,需要对所测试项目的业务需求非常熟悉 了解整个产品的研发和测试流程 全程参与,对需求.设计.开发 ...
- Testing - 软件测试知识梳理 - 测试模型
珠玉在前,不再赘言. 软件测试模型 软件测试模型汇总
- Testing - 软件测试知识梳理 - 软件性能测试
软件性能测试的基本概念 软件的性能是软件的一种非功能特性,它关注的不是软件是否能够完成特定的功能,而是软件在完成该功能时展示出来的及时性. 软件性能的指标 响应时间:是指系统对请求作出响应的时间,并且 ...
- Testing - 软件测试知识梳理 - 理解测试
理解 目的 测试就是要找到关键信息,有关项目和产品的关键决策都是根据这些信息做出. 对产品质量做出总体评估. 找出并报告团队所有可能会对产品价值产生消极影响的问题(但并不意味着能发现所有问题). 重心 ...
随机推荐
- ztree带有选项框的树形菜单使用
1.ztree简介 zTree 是一个依靠 jQuery 实现的多功能 “树插件”.优异的性能.灵活的配置.多种功能的组合是 zTree 最大优点.专门适合项目开发,尤其是 树状菜单.树状数据的Web ...
- 测试Linux下tcp最大连接数限制
现在做服务器开发不加上高并发根本没脸出门,所以为了以后吹水被别人怼“天天提高并发,你自己实现的最高并发是多少”的时候能义正言辞的怼回去,趁着元旦在家没事决定自己写个demo搞一搞. 这个测试主要是想搞 ...
- 20175314 《Java程序设计》迭代和JDB
20175314 <Java程序设计>迭代和JDB 要求 1 使用C(n,m)=C(n-1,m-1)+C(n-1,m)公式进行递归编程实现求组合数C(m,n)的功能 2 m,n 要通过命令 ...
- String 中intern
首先贴上源码中的注释 在一个String类上调用这个方法的时候如果常量池中存在和这个String对象相同的对象的时候,直接返回常量池中的常量,如果常量池中不存在这个对象,就直接将其将其加入常量池,并且 ...
- Python基础-python简介(一)
一.简介: python是一种面向对象的解释性计算机程序设计语言,由荷兰人Guido von Rossum于1989年的圣诞节发明. Python语言的特色: 1.python是一门解释性语言 解 ...
- Vimtutor中文版
================================================================================ 欢 迎 阅 ...
- 利用Sharding-Jdbc实现分表[z]
[z]https://www.cnblogs.com/codestory/p/5591651.html 你们团队使用SpringMVC+Spring+JPA框架,快速开发了一个NB的系统,上线后客户订 ...
- 可视化-echarts流向图制作
案例: http://www.internetke.com/jsEffects/2018040406/ 前段时间用echarts做了流程图,在此记录下制作步骤. 一.Echarts是什么 Echart ...
- python的配置
1.下载python https://jingyan.baidu.com/article/0bc808fc42dfab1bd485b99f.html 2.转载:https://www.cnblogs. ...
- em,px,rem的区别
px:IE无法调整px作为单位的字体大小. 是像素,是相对长度单位,是相对于显示器屏幕分辨率而言的. em:相对于当前对象内文本的字体尺寸.1em=16px: rem:在设置字体大小时,虽然仍然是相对 ...