常见的测试面试题

大家可以参考:http://www.cnblogs.com/sker/p/5774570.html

以下内容也是该博客的简单梳理

软件测试:

为了发现软件产品中的各种缺陷,而对软件产品进行验证和确认的活动过程,此过程贯穿整个软件开发生命周期。

软件缺陷:

1)软件未实现产品说明书要求的功能

2)软件出现了产品说明书指明不应该出现的错误

3)软件实现了产品说明书未提到的功能

4)软件未实现产品说明书虽未明确提及但应该实现的目标

5)软件难以理解、不易使用、运行缓慢或者从测试员的角度看最终用户会认为不好

软件测试的目的:

1)验证需求和功能是否得到完整实现

2)验证软件是否可以发布

3)对软件质量做出合理评估

4)预防下个版本可能出现的问题

5)预防用户使用可能出现的问题

6)发现开发过程中的问题和风险

自己总结的:

验证功能是否满足需求;项目上线前尽早,尽可能的多的发现软件中的bug;提高产品质量,降低成本

软件测试的原则:

1)所有测试的标准都是建立在用户需求之上 。

2)合理控制测试深度与广度,完全测试不可能,测试的投入与产出要均衡。

3)80-20原则,软件中80%的bug可以在分析、设计与评审阶段就能被发现与修正,16%的缺陷在系统的软件测试中发现,最后剩下的4%是用户长期使用的过程中才能暴露出来。

4)尽可能早的开展测试,越早发现错误,修改的代价越小。

5)发现错误较多的程序段,应进行更深入的测试。

6)软件项目一启动,软件测试也就是开始,而不是等程序写完,才开始进行测试 。

7)软件开发人员即程序员应当避免测试自己的程序

8)严格执行测试计划,排除测试的随意性,以避免发生疏漏或者重复无效的工作

自己总结的:

以用户的需求为依据;测试工作尽早参与;

有计划的测试,不要盲目测试,容易遗漏功能点;

尽量避免程序员自测;

测试不可能发现全部bug,小部分是在长期使用过程中才能发现的;

软件开发流程(软件生命周期)

计划-》需求分析-》设计-》程序编写-》测试-》运行/维护

软件测试流程:

测试计划-》需求分析-》测试用例-》测试用例执行-》提交bug-》回归测试

APP测试和WEB测试的区别:

1,安装升级测试。

  WEB:不需要安装,直接访问网址

  APP:在旧版APP包基础上安装新版本APP,打开应用是否奔溃,卡死

2,网络环境。

  WEB:有没有网络

  APP:WiFi,流量(3G,4G),弱网环境下是否奔溃,卡死。

3,兼容性测试。

  WEB:不同的浏览器,如Google,火狐,360等

  APP:不同的手机系统如iOS,Android。Android系统的不同机型,如小米、华为、OPPO、VIVO等

4,中断性测试。

  WEB:一般不用测试

  APP:突然来电话,短信,其他的应用提示。应用是否会卡死,闪退。

5,android特性测试。

  如home按键,音量按键,横竖屏等对应用的影响。

  

原文地址:https://www.cnblogs.com/hanyu258/p/7755813.html