软件测试-如何快速发现Bug
- 尽快熟悉公司的产品业务,
根据产品的业务属性来熟悉产品的业务流程,这样才能迅速找出软件中存在的一些重要的缺陷,这样发现的软件的价值才是有价值的,否则即使你能找到一些软件缺陷,那也是纯软件的缺陷,价值不大。 - 把自己当成是用户
把自己当成用户去使用该软件,比如在试用软件的过程中,思考用户是这样操作的么;
2.1 比如大量要求用户输入的软件界面中,有一些用户喜欢使用Tab键采用全键盘的输入,此时正确的接口应该是从左到右,从上到下的顺序。
2.2 比如有的用户喜欢使用快捷键进行操作(Ctrl+C),但是实际情况下一些开发出来的软件的快捷键根本不起作用。
2.3 比如软件在需要用户输入信息的时候(特别是在填写个人资料的时候),必填选项后面一律要用*等醒目的表示要让知道这个地方必须要填写。
2.4 下拉框不选的时候,应该有个默认值,并且要多检查程序中的多处下拉框,因为很多情况下下拉框取不到值。 - 善于怀疑
世界上没有绝对正确的,总有错误的地方,具有叛逆心理,别人认为不可能发生的事,我却认为可能发生;别人认为是对的,我却认为是错的。假如一个水平很高的程序员编写的程序,不要有“他写的这个程序应该没有问题吧”这种想法,这样很容以遗漏软件中的Bug。 - 不用让程序开发员“用户不会这样操作”的观点说服自己
遇到这样的情况,你要坚持自己的正确的观点,把这种现象作为一个Bug。 - 在测试的过程中要跟踪一条数据的完整流程。
比如“点击商品—收藏商品—加入购物车—订单结算—付款—消费二维码—消费—二维码失效”,如果在测试软件过程中业务流程逻辑都走不通的话,还么这个软件测试与不测试就没有什么区别的。 - 回归测试要注意的事项
程序员提交新的版本后,作为测试人员应该立即与程序员沟通这个修改的功能,并了解这个新修改的功能影响那些功能。而被影响的功能,是在回归测试中优先重点测试的地方,而且也是最容易产生Bug的地方。 - 与使用者互动的缺陷
7.1 如填写资料错误的时候,应该能够提示错误的位置,让用户知道这个地方输入的数据不对;
7.2 删除数据前一定要给定出是否删除的确认提示;
7.3 不要在软件中使用中英文混合的提示:比如对于用户在进行某个操作的错误提示,不要一会用“Error”,一会又用“错误”,一定要统一;
7.4 要对程序员的错别字进行检查,比如吧“登录”写成“登陆”;
7.5 在软件中不要对用户使用很专业的术语;
7.6 新增/修改信息白村提交后系统给出“保存/提交/修改成功”的提示信息,并自动更新显示;
7.7 在用户进行大量的输入后,点击保存按钮,仅仅是因为某个地方输入选择不正确,点击确定后所有的输入信息都被清空了,这样的Bug会大大降低软件的易用性;
7.8 对于软件的查询功能,测试的时候设置开始时间>结束时间,看看能否查询出记录; - 软件的边界值
众所周知软件最容易在边界值上出现问题,所以作为测试人员一定要在边界值上多测试,比如测试用户输入框中的数值的最大数和最小数,以及为空的情况; - 非法容错性
比如在需要输入数字的地方输入字母,在需要输入字母的地方输入数字,在需要用户输入的文本框中拷贝字数很多的整编文章到这里测试看看软件是如何做处理的; - 软件接口测试
如果软件不同部部分是由不同程序员共同完成的,那么要在他们程序接口相关联的地方多检查,避免双方程序员互相认为做了接口处理,最后谁也没有做接口的处理,导致软件在运行中产生缺陷; - 兼容性测试
软件测试要在不同的硬件、软件下(包括操作系统、浏览器)下的测试;
11.1 硬件 有时候软件在配置很高的机器上,有时会隐瞒一些错误,由于CPU运行过快的时候,很多现象一闪而过,发现不了缺陷;
11.2 软件 有时软件在不同版本的浏览器中的界面与权限是不一样的,这样的例子就是软件中的一个Bug了; - 软件在压力之下容易出错
软件在压力之下容易产生的错误,是作为一名测试人员必须要知道的事情。所以在测试过程中,将软件在压力之下长时间运行,然后看看软件是否能在压力之下正常工作; - 随机测试:
即使经过大量的充分测试,也不能发现软件中的所有缺陷,所以在测试的时候可以做一些随机测试,比如胡乱在界面上乱点,有时也会发现一些意想不到的软件缺陷; - 学习他人经验:
14.1 从事软件测试需要的知识:首先要具备软件工程的基本知识,理解软件生命周期过程中各阶段需要做的工作,及需要达到的目标。然后,需要具备一定的编程经验或者是参与开发的项目经验。其次,需要掌握软件测试方面的知识,包括测试的定义、对象、目的、测试方法、测试过程等;
14.2 测试需要解决的问题是什么:一般来说,大家一般都会认为程序员按照软件的需求说明书编写好了,,可以实现需求中定义功能的程序,那么这个软件就可以投入使用了,但是,在用户的应用过程中,会发现一系列的错误,给用户带来很多麻烦,为了给用户最大程度的减少软件给用户带来的麻烦,这是软件测试就发挥了很大作用,因此,软件测试要解决的问题就是寻找软件中未发现的隐藏的缺陷;
14.3 何时开始测试:测试是一个独立的过程,它贯穿于软件生命周期的整个过程,于软件生命周期中的个流程并发进行,因此可以说软件的整个生命周期中,越早开始测试越好。
14.4 如何开展测试:软件的测试基本可以分为测试需求分析、测试计划制定、测试用例设计、测试执行、测试结果报告这五个步骤,根据测试类型的不同,选择个步骤的开始的时间。
Ø 测试需求分析:了解测试的规模、测试的内容、复杂程度以及存在的风险,通过测试需求分析,可以得出测试要点,而且测试要点可以包括系统功能方面的测试要点,也可以包括非功能方面的;
Ø 测试计划制定:测试计划的制定可以分为如下几步。
① 首先,按照测试类型依据的标准确定需要测试的特性,如登记测试需要考虑用户文档、常规要求、功能性、可靠性、易用性这个五个特征;
② 其次,确定需要测试的子特性,如功能性要求考虑安装性、适合性、正确性、一致性这四项;
③ 然后,选择相应的测试策略,即对需要测试的几大特性该如何测试,如需要检查用户文档是否完整,需要验证功能是否正确等;
④ 再次,需要配置测试的环境,确定测试需要的硬件和软件设备是否准备齐全;
⑤ 最后,需要确定测试的人员及日程安排,为及时高质量的完成测试工作做准备,这一过程需要形成测试计划文档;
Ø 测试用例的设计:测试用例是测试工作的核心,如何设计出用最小的测试用例集找出软件中尽可能多的缺陷的测试用例,是一个很值得积累的经验;
① 在任何情况下,都应该使用边界值分析法,经验表明,这种方法发现错误的能力最强;
② 必要时使用等价类划分法补充测试用例;
③ 必要时采用错误推测法补充测试用例;
④ 如有输入条件的组合,就从输入条件极其组合开始测试;
Ø 测试执行:手工执行功能化测试用例,并检查UI设计的Bug,在功能手工测试之后进行功能、性能、接口等自动化测试。
Ø 测试结果报告:根据不同的测试类型出具不同的测试报告,主要分析在测试中出现的问题,并对软件提出评估报告和结果建议;
软件测试-如何快速发现Bug相关推荐
- 软件测试数据怎么找,作为软件测试人员怎么能快速找到bug
软件测试工作中找bug就是这个岗位本身立足的职责,那么对于很多新人和新入行的同学们来说,这个过程会有点痛苦,毕竟经历的项目经验不多,想快速的切入寻找bug往往会比较痛苦. 那下面我就以自身的经验来普及 ...
- 阿里软件测试工程师手把手教学—如何快速定位bug 编写测试用例?
作为一个测试人员,如果你连常见的系统问题都不懂得分析,频繁地把前端人员问题分配给后端人员,把后端人员问题分配给前端人员,那么你在团队发展中的地位是显而易见的,声誉.赏识.加薪应该是你遥不可及的梦想. ...
- 软件测试发现bug提交到哪,软件测试员发现bug之后需要怎么做?
"bug像是一个被过分宠爱的小孩子,得到了特别多的关注.它们在开发者的IDE里悄然无声的诞生,但在现身之刻却引来一片喧闹"--bug的一生 对于测试人员来说,bug的生命周期一般分 ...
- 软件测试一个星期没找到bug,一个月都没有发现bug,怎么办?
昨天从51testing论坛看到一道题目,很有意思,如果是面试时突然提问,可能还真不太好回答. "给你一个软件,你测试了一个月都没有发现bug,这说明什么?你怎么办?" 当时看到这 ...
- 软件测试培训分享:Bug的作用有多大?
软件测试人员在工作中遇到最常见的是就是bug,那么bug经常出现是对是错呢?Bug的作用有多大?本期小编为大家介绍的软件测试培训教程就是关于这方面的内容的,来看看下面的详细介绍吧. 软件测试培训分享: ...
- 写给测试小白:怎么快速找到bug?怎么写测试用例?
软件测试工作中找bug就是这个岗位本身立足的职责,那么对于很多新人和新入行的同学们来说,这个过程会有点苦逼,毕竟经历的项目经验不多,想快速的切入寻找bug往往会比较痛苦. 那下面我就以自身的经验来普及 ...
- 【软件测试】快速入行软件测试
快速入行软件测试 1.初识软件测试 软件测试的前景与现状 软件测试越来越被企业重视,人才稀缺,市场需求扩大. 软件测试人员的职业生涯规划 技术型路线.自动化测试工程师.性能测试工程师.安全测试工程师等 ...
- 软件测试对于减少程序BUG有多大帮助?
软件测试对于减少程序BUG有多大帮助? 有经验的程序员通常认为测试与代码同等重要,测试可以减少代码变更或扩展的不确定性.测试应该方便阅读简单且能快速运行,使用的内存也不会很多. 常见的软件错误可能会导 ...
- 软件测试生命周期与bug生命周期
目录 一.软件测试&软件开发生命周期 二.描述一个bug 三.bug级别与生命周期 四.测试执行 一.软件测试&软件开发生命周期 1. 软件测试与软件开发的对应过程 (1)需求阶段:测 ...
最新文章
- 深圳市城镇职工社会医疗保险现金报销管理办法(二)
- C++容器适配器之priority_queue
- 亮剑:PHP,我的未来不是梦(5)
- php认识正则吗,php正则表达式有什么用
- 一步一步写算法(之克鲁斯卡尔算法 中)
- gsoap使用心得!
- mysql数据库常见问题_初学者必读 MySQL数据库常见问题汇总
- 市场部和销售部的区别
- qca956x flash usb
- SpringBoot邮箱注册验证
- 后端返回base64格式数据转excel格式文件并下载
- 点云最小二乘法拟合空间直线
- 2018年总结:向死而生,为爱而活——忆编程青椒的戎马岁月
- 论文中的i.e.等简写
- 分享两套模板,zblog模板和emlog模板。
- 德国海曼HTPA 32x32d热成像传感器代替MLX90640之传感器数据读取和计算
- 移动端开发——flex布局
- 雨听 | 英语学习笔记(十)~作文范文:怎样提高学生体能?
- 混合高斯模型介绍以及应用
- 大专考试计算机英语题目,专科英语入学考试题
热门文章
- Centos 忘记root密码怎么办?
- 计算机房防凝露保温材料,你了解机房保温棉的使用和作用吗?
- OpenCL与CUDA,CPU与GPU
- “终极PK”终告落幕,DEMO GOD花落谁家?
- 恢复账套提示文件上的媒体簇结构不正确_2012年初级会计电算化试题二及答案...
- 大数据技术学习之Linux学习
- 7成居民以为房价高难承受 出资志愿上升
- 同方威视、清华大学工物系和长庚医院联合,打造“平安医院”
- 测试团队如何设定绩效考核指标
- Win11下使用MotionPro遇到的坑