一、软件测试的定义、思维、原则、目的、流程
目录
80-20原则:80%的缺陷聚集在20%的模块中,经常出错的模块改错后还会出错。
软件测试的定义、目的、原则、思维、流程
1.软件测试定义
软件测试是在规定条件下(时间、金钱)对软件系统进行审核、运行和评估,是为了尽早发现软件缺陷,并确保缺陷修复,验证是否满足需求所进行的活动。测试只能证明缺陷的存在,不能证明缺陷不存在。
2.软件测试目的
软件测试目的是发现软件中的缺陷,提高产品质量。
- 发现尽可能多的缺陷,并不是说明软件中没有缺陷;
- 成功的测试在于发现迄今尚未发现的缺陷;
- 测试绝不是证明软件100%正确,即使经过了最严格的测试之后,仍然可能还有没被发现的错误潜藏在软件中。
3.软件测试原则
- 测试工作是有计划的,应尽早开展测试工作;
- 尽量避免测试自己开发的程序;(指开发自己开软件自己测试)
- 测试只能证明缺陷存在,不能证明缺陷不存在;
- “彻底地测试”难以成为现实,要考虑时间、费用等限制,不允许无休止的测试;
- 测试都应该追溯到用户需求;
- 测试计划和测试执行应当进行分离;
- 软件缺陷具有免疫性,应尽可能采用多种方法和数据对软件进行测试
4.软件测试思维
- 发现尽可能多的缺陷,不是为了说明软件中没有缺陷
- 成功的测试在于发现了迄今为止尚未发现的缺陷。--追求
- 交叉测试(测试人员所测试的模块交换测试,比如A本轮执行的M模块,B执行的N模块, 在下一次测试时 A执行N模块, B执行M模块。)
- 测试越早,发现问题后解决问题的成本越小。
- 测试绝不是证明软件100%正确,即使经过了最严格的测试之后,仍然可能还有没被发现的错误潜藏在软件中。
5.如何进行高效的测试?
测试工程师可以通过尝试一些持续集成手段,应尽早开展测试活动,还可以加入一些自动化技术,通过不断反复地测试来发现更多的缺陷。
- 一个高质量的软件式设计和开发出来的,并不是测试出来的。
80-20原则:80%的缺陷聚集在20%的模块中,经常出错的模块改错后还会出错。
6.软件测试流程
7.一个测试工程师应该具备那些职业素质和技能
- 掌握基本的测试基础理论;
- 本着找出软件存在的问题的态度进行测试,不要以挑刺的形象出现;
- 可熟练阅读需求规格说明书等文档;
- 以用户的观点看问题;
- 有强烈的质量意识
- 细心和责任心;
- 良好的有效的沟通方式(与开发人员及客户)
- 具有以往的测试经验能够及时准确的判断出高危险区在何处
8.面试
- 什么是软件测试?软件测试的目的与原则?
- 你们公司的测试流程是怎样的?
- 一个测试工程师应该具备那些职业素质和技能
- 从项目的启动和发布过程,测试应该都做了哪些工作?
- 你对测试最大的兴趣在哪里?为什么?