常见的测试面试题总结
1. α测试测试与β测试的区别
首先alpha测试和beta都属于验收测试,这两种测试都需要用户参加,且都不能由程序员和测试员执行。广义上来讲, α测试是“内测”, β测试是“公测”
alpha测试是用户在开发环境或者是公司内部模拟实际操作环境的测试
α测试的特点是
1、它是在开发环境下进行的(不对外发布)
2、它不需要测试用例评价软件使用质量
3、用户往往没有相关经验,可以是兼职人员,开发者或测试者坐用户旁边
4、目的主要评价软件产品的功能、局域化、可用性、可靠性、性能等
Beta测试是真实用户在实际操作环境下进行的测试。 而且顺序不能错,必须先进行Alpha测试再进行Beta测试;先α测试后β测试
Alpha测试的环境是受开发方控制的,用户的数量相对比较少,时间比较集中。
而beta测试的环境是不受开发方控制的,谁也不知道用户如何折磨软件,用户数量相对比较多,时间不集中。
对于软件产品来说,在系统测试后,才有α测试β测试,而且通用的软件产品需要较大规模的beta测试,测试周期比较长。如果产品通过了beta测试,那么就可以正式发行了。
如果还不能够理解明白,就类比一款叫做《王者荣耀》的游戏,有体验服(内测玩家)、正式服(大众的普遍玩家)。
2. 单元测试有哪些内容?自顶向下和自底向上有什么区别?
单元测试的内容包括:接口测试、
局部数据结构测试、
边界条件测试、
独立执行路径测试、
内部错误处理测试
自顶向下的单元测试:先对最顶层的基本单元进行测试,把所有调用的单元做成桩模块;然后再对第二层的基本单元进行测试,使用上面之前已测试的单元做驱动模块,以此类推直到测试完所有的基本单元。
优点:不需要开发驱动模块;
缺点:测试过程越来越复杂,开发和维护成本增加;不是单元测试的一个好的选择
自底向上的单元测试:先对最底层的基本单元进行测试,模拟 调用该单元 的单元做驱动模块;然后再对上一层进行测试,用下面之前已测试的单元做桩模块,以此类推直到测试完所有的单元。
优点:不需要开发桩模块;
缺点:测试过程越来越复杂,测试周期较冗长;
3. 增量式集成测试有过了解吗?与非增量式集成测试有什么区别?
增量式集成的策略有很多种,主要有以下三种:①自顶向下集成,②自底向上集成,③三明治集成
该策略最大的特点就是:支持故障隔离、定位问题
非增量式集成测试策略也叫做大爆炸集成、一次性集成,即在最短的时间内把所有的系统组件一次性集成到被测系统中,并通过最少的用例来验证整个系统,不考虑各组件之间的相互依赖性或者可能存在的风险
该策略最大的特点就是:问题定位和修改都比较困难,适用于维护型的项目,并且新增的项目只有少数的模块被增加或修改;或者适用于测试系统比较小,并且各个组件都经过了充分的单元测试。
4. 白盒测试的逻辑覆盖类型有哪些?能由弱到强排个序吗?
5. 在性能测试中,压力测试、负载测试、 稳定性测试能讲讲它们的区别吗?
6. 听过软件调试技术吗?有哪些呢,列举一下?LoadRunner用过吗,有哪几部分?
7. 如果说我们公司开发了一款手机APP应用,那么,属于界面元素测试内容有哪些?对手机软件的压力测试有哪些?
窗口测试、菜单测试、文字测试、图标测试、鼠标测试
存储压力、响应能力压力、网络流量压力、边界压力
拓展:再提一个问题,并发压力算不算压力测试呢?
否,因为并发压力是针对服务器的,因为每次并发是一个客户端,并发压力只发生在多用户操作的情况下,因为手机本身是对应一个用户操作,并不存在并发压力的可能
8. 确认测试、冒烟测试、回归测试的区别?