SWTBOK測试实践系列(5) -- 项目中使用手动和自己主动化的策略
手动測试和自己主动化測试永远是一个非常热门的话题。自己主动化也一直被人们捧上神坛。自己主动化測试和手动測试从技术上来说本质事实上都是測试用例设计。仅仅只是终于形式一个是人工运行,一个是代码运行罢了。这两者就如白盒測试和黑盒測试一样在项目中都是不可或缺的。
我们来看两个场景。
案例一:某企业招聘软件測试project师,并组建了各自分工明白的自己主动化和手动測试部门,在项目中两个測试团队分工明白并互相分享经验。终于项目产品的质量得到了良好的保证。
案例二:小陈同学想应聘软件測试project师的岗位。投了非常多简历之后也得到了若干面试的机会,但在面试过程中却频频由于自己之前都是手动測试而导致失败甚至被别人看不起。经过了一段时间之后,小陈同学也心灰意冷,也開始认为手动測试就是没有价值的活动。
上面列举的场景在行业中很常见。那么我们应该怎样正确的在项目的測试活动中实施手动測试或自己主动化測试呢?主要有下面几个因素决定:
1. 回归和探索
我们在项目的測试过程中,回归測试是不可缺少的一个环节,它可以使得我们的产品尽量不会出现反复的缺陷。比方測试输入法产品,不管功能和设计怎样变化。其主要的字符输入功能总是不会改变的。
在长期的项目迭代过程中,測试人员多少都会由于每次验证相同的问题而掉以轻心,同一时候也浪费了project师的时间在反复的工作上。
往往这类每一个迭代版本号都须要验证的重要核心的功能就被贴上了自己主动化測试的标签。自己主动化測试既可以节省回归的成本也可以增加持续集成的平台。而每次版本号新增的功能的单独模块和集成測试很多其它的须要手动的探索性測试。手动測试很多其它的须要基于測试人员对于产品的了解和经验而进行的,一个经验丰富的手动測试project师可以在短时间内发现非常多的功能上的缺陷。这绝对是自己主动化測试无法达到的高度。
2. 压力測试
測试活动的目的决定了选择手动測试还是自己主动化測试。
就比方压力測试。本身測试的目的在于查看软件功能在被长时间使用之后是否会有内存泄漏、溢出等问题。这类測试活动假设手动来做的话。或许一个測试project师一天八小时得所有放在这个上面。还未必可以达到測试得效果。
所以这类測试就贴上了自己主动化測试得标签。仅仅要有针对性得编写脚本去不停得使用产品。在自己主动化測试得过程中可监控功能的异常情况从而获取有效的信息。在这类測试活动中,手动測试是无法正常支持的。
3.场景模拟測试
在測试活动中有非常多环境是我们通过手动測试无法覆盖到的。
包含方法的各种类型的參数、各种边界的模拟等,这类測试活动就更适合用自己主动化来做。
在測试过程中,使用技术手段将各种測试环境、配置等进行模拟之后从而弥补手动測试在有限的測试环境中遗漏的測试点。
SWTBOK測试实践系列(5) -- 项目中使用手动和自己主动化的策略的更多相关文章
- SWTBOK測试实践系列(1) -- 測试在项眼下期的评审投入划算吗?
測试策略:静态測试还是动态測试? [对话场景] 成功公布某个软件版本号之后,项目团队召开了项目的经验教训总结大会.在会议期间,项目经理小项和測试经理小測进行了例如以下的对话: 小项:"小測, ...
- SWTBOK測试实践系列(4) -- 软件測试技术的黑白之道
白盒測试和黑盒測试往往是项目中最受争议的两种測试类型,每一个人偏爱各不同.现实生活中行业人员大多喜欢白盒測试而忽视黑盒測试,那么项目中又应该怎样平衡这两类測试呢?我们先来看两个案例. 案例一: 某移动 ...
- atitit.jndi的架构与原理以及资源配置and单元測试实践
atitit.jndi的架构与原理以及资源配置and单元測试实践 1. jndi架构 1 2. jndi实现原理 3 3. jndi资源配置 3 3.1. resin <database> ...
- ES6系列之项目中常用的新特性
ES6系列之项目中常用的新特性 ES6常用特性 平时项目开发中灵活运用ES6+语法可以让开发者减少很多开发时间,提高工作效率.ES6版本提供了很多新的特性,接下来我列举项目中常用的ES6+的特性: l ...
- Android开发和測试实践 - 接入友盟统计
这两年一直在做无线的測试,兴许还会继续去做无线的測试,可是之前由于时间的原因一直都没有非常细致的了解到代码层面. 最近抽出时间自己做了些app的开发,决定假设想把移动的測试做好做深入.有一定的app开 ...
- .net Dapper 实践系列(1) ---项目搭建(Layui+Ajax+Dapper+MySQL)
目录 写在前面 一.前期准备 1.在MySQL创建数据库 2.创建项目 3.安装程序包 4.添加插件 5.添加DbOption文件夹 6.添加实体类 写在前面 学习并实践使用Dapper 这个小型的O ...
- CJCMS系列---说说项目中的缓存实现(1)
缓存者,临时文件交换区也.主要就是方便查找,提高查找效率(效率在于读内存速度比读硬盘快). 大多数的项目的缓存都是通过设定过期时间来做的,可是我对于这样的替换策略不以为然,而且会导致混乱. 有人说: ...
- 关于vue项目中,手动定义的scrollTop的值
在项目中,有时需要控制scrollTop的值,比如有一个列表页,点击任意一个列表可以进入其详情页,这时如果你要返回的话, 肯定是希望还回到刚刚点击的地方,我当时的解决办法是,本地存下点击那一刻的scr ...
- 【2018.05.09 Python学习及实践】个人项目中使用的Python库备忘-持续更新
科研中无论是使用C/C++.Python.Matlab,如果能找到合适的库可谓是事半功倍: 有时候忙活半天才发现本身就有成熟的库可用,自己实现的在功能.性能.安全性上都远远不及,虽然锻炼了能力,但存在 ...
随机推荐
- 博客笔记(blog notebook)
1. 机器学习 2. NLP 3. code 实际好人 实际坏人 预测百分比 预测好人 \(p_GF^c(s_c\|G)\) \(p_BF^c(s_c\|B)\) \(F^c(s_c)\) 预测坏人 ...
- spring AOP详解一
AOP是Aspect Oriented Programing的简称,面向切面编程.AOP适合于那些具有横切逻辑的应用:如性能监测,访问控制,事务管理以及日志记录.AOP将这些分散在各个业务逻辑中的代码 ...
- PHP经典面试题目汇总(上篇)
1.双引号和单引号的区别 双引号解释变量,单引号不解释变量 双引号里插入单引号,其中单引号里如果有变量的话,变量解释 双引号的变量名后面必须要有一个非数字.字母.下划线的特殊字符,或者用{}讲变量括起 ...
- 【bzoj4785】[Zjoi2017]树状数组 线段树套线段树
题目描述 漆黑的晚上,九条可怜躺在床上辗转反侧.难以入眠的她想起了若干年前她的一次悲惨的OI 比赛经历.那是一道基础的树状数组题.给出一个长度为 n 的数组 A,初始值都为 0,接下来进行 m 次操作 ...
- 【Luogu】P2598狼和羊的故事(最小割转最大流)
题目链接 最小割水题.入点向白点连边,白点向白点.黑点和空点连边,空点向空点和黑点连边,黑点向黑点和汇点连边.然后跑最大流即可. 话说Fd最近怎么光做水题啊……一点用都没有……qwq 我太菜了,做完一 ...
- 【Luogu】P3389高斯消元模板(矩阵高斯消元)
题目链接 高斯消元其实是个大模拟qwq 所以就着代码食用 首先我们读入 ;i<=n;++i) ;j<=n+;++j) scanf("%lf",&s[i][j]) ...
- leetcode 20 简单括号匹配
栈的运用 class Solution { public: bool isValid(string s) { stack<char>The_Stack; ; The_Stack.push( ...
- canvas 转化为 img
]; var image = new Image(); image.src = c.toDataURL("image/png"); $("#qrcode canvas&q ...
- iOS应用内跳转百度高德苹果地图
移动开发经常用到基于位置的一些导航功能,但是对于对导航功能依赖性不强的的应用,我们直接采用应用外跳转地图APP即可. 但是应用间跳转,首先需要设置白名单, 在iOS 9 下涉及到平台客户端跳转,系统会 ...
- js-异步请求音频完成后页面显示
var ajax = new XMLHttpRequest(); ajax.open("get", "http://gzmylike.wedei.com/zt/gzyan ...