项目篇
1、你在项目中负责什么?
参考答案:在工作中我主要负责功能测试,其次还参与了一些非功能测试,如:接口测试,自动化测试,性能测试,兼容性测试等。在项目中主要参与了需求分析和需求评审,负责收集项目资料协助上级完成测试计划的编写,编写测试用例并评审,测试环境的搭建以及测试执行和编写测试报告等工作。
2、问题:怎么保证覆盖用户需求?
回答:从BA那里拿到需求文档,熟悉文档,画好流程图,保证整个流程都覆盖全面,小组之间每个人都要根据各自的流程图,来讲解一下自己的思路,防止测试点遗漏,各个功能点有哪些限制条件,防止之后编写测试用例时发现遗漏;用例编写完之后,再进行用例的评审,看看测试点有没有用遗漏,对需求理解有没有错误,测试场景是否覆盖完全。
3、一般测试过程中出现问题,你是怎么定位的?
参考答案:
1)、检查测试环境是否有问题
2)、用fiddler抓包,分析请求和响应数据是否存在问题
3)、查看应用服务器的日志
4)、然后再查看数据库的数据是否存在问题
4、测试结束的标准是什么?
答:需求覆盖率、用例执行率、缺陷遗留率达到预定质量目标
5、你会编写测试计划吗?
参考答案:我们之前的测试计划都是测试组长写的,我们只是负责收集数据,协助组长完成测试计划的编写,测试计划的内容还是知道的,有测试范围、测试方式/策略、测试资源、测试开始和结束条件、进度安排、测试组织等,如果以后有机会让我来编写测试计划,我觉得我没问题。-----(回答的时候,要自信。)
6、缺陷怎么分类的?怎么跟踪?印象最深的bug有哪些?
参考答案:缺陷类型分为:致命,严重,一般,轻微
怎么跟踪:
印象最深的bug:(这个问题经常问题,必须要提前准备好)
7、测试一般做几轮?
参考答案:一般是两三轮,看情况,缺陷不多,就两轮;稍微多些,就三轮。(一般我们测试都分两到三轮,通常是两轮,如果Bug数量多的话就三轮。然后我们拿到求文档后,进行需求分析和评审一般要两天左右,测试计划的编写大概也要半天时间,编写测试用例和评审也要两到三天,然后测试执行也要两到三天,中途开发要修复bug和回归测试也要两到三天)
8、工作中遇到过什么困难,是怎么解决的?
参考答案:(思考三四秒...)在上个项目遇到过一个,当时我们的测试环境有问题,在界面上构造不了数据,导致测试堵塞了,项目又赶着上线,当时我们的解决方法是,从生产环境上把数据导到测试环境上来测试。
8、你们兼容性怎么测试的?
面:你们上一个项目写了多少条测试用例
我:我也记不太清了,大概一千多条吧,但我们迭代比较频繁,大概一个迭代是100多条用例,这个也是要根据需求来,需求多的话,就写多一些
面:发现了多少个Bug
我:发现了五六十个bug吧,如果面试官问:发现这么多?就回答开发的水平有限,如果说少,就说开发的能力可以
面:项目有上线吗
我:我们公司是做外包的,产品一般都是给客户定制,完成项目后交付给客户他们会自己去运营,有可能把软件的名字改了再上线,我们也不清楚
9、迭代两到三周的项目,需求分析写多久,用例写多久,写多少用例,执行多久,发现多少个bug,做了几个版本,项目有没有上线?
参考答案:
1)、需求分析1到2天,用例也是写两天左右,包括用例评审;
2)、用例的个数看需求和颗粒度的大小,如果时间充足,我们写的用例细,用例数就多些,一个版本大概有100多条,执行花的时间长了,一般要4到5天;
3)、每个版本发现的bug数量,要看需求和实现起来的难易程度,开发人员的水平和测试用例的质量,一般一个版本我们能找50-60个bug,越到后面,系统越来越稳定,发现的bug就越少;
4)、总的版本数记不清了,十来个版本是有了的;
5)、项目上线了,我们是给用户定制产品的,交付给用户自己运营。
10、你们的项目做了多久,一直在做?你负责哪些模块?
提示:这个项目到现在还一直在做,已经做了8个月了(多长时间,可以灵活修改),前期需求比较多,迭代的版本多一些,到后期项目基本稳定了,需求变化不大,我们会被调去做其他项目,这个项目后期如果需求发生变化,我们还是要负责测试。所以,在上家公司基本每个人都会跟着几个项目。
提示:回答负责哪些模块的时候,一定不能说 注册,登陆,查询!!!!
11、项目多久迭代一次
1)、没有固定时间,看需求的多少和复杂程度,快的这个星期,慢的一个月
2)、看需求的多少,我们写的用例比较细,一个用例测试一个场景,基本每个迭代都有100多条用例
3)、把bug单对应的用例执行一遍,还要检查有数据交互的模块会不会受影响,有没有引入新的问题;项目上线前,还要把当前版本的重要功能以及冒烟测试的用例都回归一遍,确保重要功能上线后不出问题。
12、那你们用例执行后bug占整体的比率,是什么原因造成的?
参考答案:一般是40%左右
14、问题:当用户需求变更时,你会怎么做?
答案:这个会经常遇到的,一般如果是小的需求变更,合理的话,能改的,经理会让开发直接改,然后测试再测一下就好了,如果是涉及到比较大的改动的话,我们会开会讨论一下会影响到的模块,经理会计算一下修改的成本,一般会建议放到下一个版本再修改,如果必须要改的话,开发就会改的,测试也会重新修改一下测试用例,把可能会影响到的模块再测一遍。
14、公司在哪里?有多少人?项目有多少人?
参考答案:公司在xxxx,有40来人,没问的项目开发有7个,测试2个。
17、问:在最新的项目中有学习到什么,对自身的成长有没有什么帮助
答: 通过这个项目首先是丰富了我自身的测试经验,然后这个项目也是有做性能、接口、自动化等等,这让我的测试能力更能全面的发展,同时通过项目也让我对web端的测试更加熟悉,相信在以后的工作中我对web端的项目能够尽快上手的。
---(PS:根据自己的理解来回答)
************************************
15、面试官:支付功能怎么测试(特别重要)
第三方支付,微信怎么测?
像第三方支付宝,微信调用接口,然后我们公司有专用的支付宝账号和微信账号
1、从功能方面考虑:
1)、用户的使用场景:包括正常完成支付的流程;支付中断后继续支付的流程;支付中断后结束支付的流程;单订单支付的流程;多订单合并支付的流程;余额不足;未绑定银行卡;密码错误;密码错误次数过多;找人代付;弱网状态下,连续点击支付功能功能,会不会支付多次;分期付款等;
2)、不同终端上支付:包括PC端的支付、笔记本电脑的支付、平板电脑的支付、手机端的支付等;
3)、不同的支付方式:银行卡网银支付、支付宝支付、微信支付等;
4)、从产品容错性上:包括支付失败后,能否再次支付、能否退款;
2、从性能方面考虑:
多个用户并发支付能否成功;
支付的响应时间;
3、从安全性方面考虑
使用Fiddler拦截订单信息,并修改订单金额,或者修改订单号,(下两个订单A,B,付款时拦截订单B,并把订单B的订单号改为A订单的订单号)无法完成支付;
4、从用户体验方面考虑
是否支持快捷键功能;
点击付款按钮,是否有提示;
取消付款,是否有提示;
UI界面是否整洁;
输入框是否对齐,大小是否适中等。
5、兼容性
BS架构:不同浏览器测试。
APP:不同类型,不同分辨率,不同操作系统的手机上测试
16、购物车怎么测试?(特别重要)
1.功能测试
a)、未登录时:
将商品加入购物车,页面跳转到登录页面,登录成功后购物车数量增加。
b)、登录后:
所有链接是否跳转正确;
商品是否可以成功加入购物车;
购物车商品总数是否有限制;
商品总数统计是否正确;
全选功能是否可用;
删除功能是否可用;
价格总计是否正确;
商品文字太长时是否显示完整;
购物车中下架的商品是否有标识,是否还能支付;
新加入购物车商品排序(添加购物车中存在的店铺的商品和购物车中不存在的店铺的商品);
是否支持快TAB、ENTER等快捷键;
商品删除后商品总数是否减少;
收藏功能是否可用;
购物车结算功能是否可用。
2.兼容性测试
BS架构:不同浏览器测试,比如:IE,火狐,谷歌,360这些。
APP:在主流的不同类型,不同分辨率,不同操作系统的手机上测试,华为,vivo,oppo等
3.用户体验测试
删除商品是否有提示;
是否支持快捷键功能;
是否有回到顶部的功能;
商品过多时结算按钮是否可以浮动显示;
购物车有多个商品时,能不能只对单个商品结算;
界面布局、排版是否合理;
文字是否显示清晰;
不同卖家的商品是否区分明显。
4.性能测试
打开购物车页面要多长时间
************************************
17、面试官:你们整个购物流程是怎样的,都有那些测试点? -- 以下答案为只能作为回答思路的参考,具体细节需要自己再细化
答:我们整个测试购物流程是这样的,首先在前台界面去搜索自己要购买的商品,搜索这功能是我们的一个测试点(问:那你是怎么去测试这搜索功能的)首先我会按正常情况下输入正确的信息去进行搜索看是否达到自己想要的结果,然后会输入一些异常的信息去搜索如:搜索不存在的商品、敏感的字符等看是否能搜索,这就是我对搜索功能的一个测试。把自己要购买的商品添加购物车(说了下购物车的测试)添加一件商品到购物车然后去检验是否添加成功,添加同样的商品是否数量叠加,添加前的价格和添加后的价格是否一样等这些都详细说了下........最后就是结算,我说在结算之前要确认购物车商品的价格是否和结算的价格一样,确认一致后选择一种支付方式如微信、支付宝、余额支付等支付之后去确认扣款的钱是否和结算的钱一样.......之后还说了下物流方面还有订单状态方面(简单说了下)
安装测试:
通过第三方软件协助安装是否正常
在不同操作系统下安装是否正常
安装过程中断网,安装是否能完成
安装后的文件夹及文件是否写到了指定的目录里,且没有生成多余的目录结构和文件
软件安装过程是否可以取消,点击取消后,写入的文件是否如概要设计说明处理
软件安装过程中断电/重启/死机
安装空间不足时是否有相应提示
卸载测试
可以通过第三方软件协助卸载
测试卸载后文件是否全部删除所有的安装文件夹
软件卸载过程中断电/重启/死机
卸载后是否可以重装
升级测试
在线跨版本升级
通过第三方软件协助升级是否正常
在不同操作系统下升级是否正常
升级过程中断网,升级是否能完成
升级后的文件夹及文件是否写到了指定的目录里,且没有生成多余的目录结构和文件
软件升级过程是否可以取消,点击取消后,写入的文件是否如概要设计说明处理
软件升级过程中断电/重启/死机
升级空间不足时是否有相应提示
总用例数1500条, 总bug500个左右, 每天写50-60个,一个每个项目大概6-12个月,
、如果一个项目给你负责、你会怎么做?
参考答案: 在测试前需要先做好测试计划,其中最重要的是本次测试使用的测试方法、使用的测试工具、测试环境。人员方面需要进行人员及进度的安排,每个测试阶段后的输出件,还要有风险评估。在测试前将这些准备工作做到位,这样在测试的时候就会比较有条理。
如果项目很赶,经理安排一个项目要三周内完成,你知道你完成不了,你怎么办?
参考答案:先和经理说明,时间太短,存在风险;然后,将任务划分优先级,先完成优先级高的任务 ,保证项目的主要功能没问题,然后,时间允许的话,再做优先级稍微低的;在这个时间段内,每天向 上级报告工作的进度,让领导知道现在的工作进展和存在的风险。
21、验收测试(UAT测试)怎么做?
参考答案:在UAT测试之前,我们会制定测试方案,选择基线用例,即级别高的用例,在UAT测试环境上进行测试,如果测试通过,验收测试就通过了。