3,你们原来项目的主要的功能模块有哪些,你主要负责哪些模块?
8,原来项目有遇到哪些经典的bug,你是怎么发现的,最后怎么解决的?
23.web测试中,如何判断是前端的bug还是后端的bug呢?
35.电商的库存逻辑怎么测。比如客户下订单,库存减少,规定时间内未支付定单就取消,库存又加回来
46.请写出项目一中核心模块(erp、fangwe)有哪些,请写出模块的业务流程
54.你测试的时候发现哪些经典bug,你描述出来。(erp 和 方维)
58. 用例包含哪些部分,哪些测试用例设计方法,你一般常用哪些方法?
60.linux在测试工具中有没有用到过,具体哪些场景用到?
面试问题
1,你们原来项目的测试流程是怎么样的?
我们的测试流程主要有三个阶段:需求了解分析,测试准备和测试执行
1需求了解分析阶段
【我们的SE会把需求文档给我们自己先去了解一到两天这样,之后我们会有一个需求澄
清会议,我们会把不明白不理解的需求在会议上说出来,包含需求的合理性
还有需求的可测性等,产品这边解答,目的是让我们测试这边和开发对需求的理解达到一致】
2测试准备阶段
【会议结束之后我们开始准备测试工作,我们测试这边会写一个测试计划,分配每个人
负责的模块,然后我们就根据自己负责的模块用xmind(思维导图)进行测试需求分析
,分析测试点,以及编写测试用例。之后我们会在自己的组内先进行评审,评审修改之
后还会在我们的项目组评审。评审完后进行修改测试用例】
3测试执行阶段
【开发人员编写好代码之后,我们会把代码包部署到测试环境中进行SIT测试,在正
式测试之前我们会先做一个冒烟测试,冒烟测试通过之后我们才转测。在执行测试的过
程中,我们如果重现有bug就会用禅道记录并且提交bug ,也会进行回归测试,一直到没
有重现bug达到上线为止,每一轮测试结束之后我们都会写一个测试报告。一般情况下,测
试2-3轮之后会达到上线要求。上线前我们会做UAT测试,当达到上线的标准后,测试报告会认为测试通过,由项目组与产品决定时间上线,上线完成,一周左右我们会写一个项目总结测试报告,总结我们在上一个版本中遇到的问题以及今后有哪些地方需要改进。产品迭代几次后,我们会跑自动化用例来测试所有的功能模块】
2,你介绍下,你最熟悉的项目?
【我最熟悉的项目是一个金融p2p理财项目。这是一个由第三方控管资金,它通过采用众筹模式,借款功能,统一管理来实现借款人资金周转和投资人投资理财以及管理平台赚取管理服务费的项目】
项目的核心业务是同过借款人放标,让投资人选择投标的方式使借款人获得所需的资金。
该项目的前台模块主要有:前台首页、我要理财、我要借款、我的p2p信贷、安全保障、积分商城、理财中心;该项目的后台主要有:后台首页、借贷管理、理财管理、会员管理、资金管理、数据统计、部门管理、前端设置、微信平台设置、营销推广、系统配置。
方维借贷的借款业务流程大概如下:
注册—> 登录-> 借款 - > 后台初审 -> 后台复审 -> 公布、投标 -> 满标 -> 后台放款->借款人提现->借款人每个月还款-> 投资人每个月收取收益。
还款业务流程:贷款人可以在我的P2P信贷的贷款管理中随时查看或还款,可以选择还款、提前还款和申请续约。
我负责的模块只要是:借贷管理、会员管理、我的p2p信贷3个模块;借贷管理主要包含借贷审核管理、贷款管理、借贷记录、债权转让;会员管理主要包含会员列表、会员审核、认证管理、额度申请、信息快速查询;我的p2p信贷主要包含投资管理、借款管理、账户管理。
后台的借贷管理主要功能是审核各种类型的借贷以及在满标后进行放款,查看过往的借贷记录。同时在投标信息和债权转让中可以对所有的投标和债券转让进行操作。
3,你们原来项目的主要的功能模块有哪些,你主要负责哪些模块?
我们原来的项目主要功能模块分为前台和后台,我们组主要负责前台的借款、
投资、充值、提现以及个人信息的展示与修改,还有就是登陆和注册等模块。
4,你说原来充值功能,你是怎么测试的?
一.首先我们先测试充值的主体功能,看看能否充值成功;(等价类,边界值,判定表,流程分析法,状态迁移法,错误推测法,异常处理法来测试)
用边界值的方法测试充值限定的额度能否充值成功
用特殊字符在充值输入框输入是否有提示语提醒
充值输入框为空时点击充值是否有提示
在输入框里输入金额,再后退网页再进入充值页面,是否还保存着输入的金额数
多次往返充值界面,是否还可以正常充值
选择多个充值支付方式能否充值成功
选择各银行网银能否充值成功
充值成功时,有没有相关的提示和页面是否正确跳转
充值成功后,相关联的金额是否正确显示
充值成功后,查看数据库的相关数据是否有存在和正确
点击第三方支付(如支付宝,微信)是否有相关的连接页面跳转
能否同时选择多个支付方式来充值
交叉选择支付方式后,再选择其中一个支付方式能否充值成功
充值输入框多次修改充值金额,能否充值正确
等..........
二.我们再测试充值的性能,用jmeter模拟大量用户同时充值,看看能否充值成功;
三.我们再对充值的安全性进行测试,
(1)绑定银行卡充值和未绑定银行卡能否充值成功;
(2)绑定多张同名的银行卡以及一个用户绑定多张不同名的银行了能否绑定充值成功
(3)实名认证和未实名认证能否充值成功;
(4)用边界值的方法测试每天充值限额,次数
(5)测试一天之内最多可以输入密码错误次数是多少,次数达到多少次锁卡,是否需要
到银行解锁方能再进行充值
(6)输入充值金额后需要输入多少次密码,是否有加密,不输入密码能否充值成功;
(7)使用其他的支付方式支付能否充值成功;
(8)测试充值金额的类型;
(9)充值之后所充值的账户以及平台的余额额度是否有增加;
(10)单次点击,多次点击会不会充值成功;以及多次点击会不会多次充值;
(11)同时打开多个充值界面,能否充值成功;
(12)不登陆用户的情况下是否充值成功;
(13)不选择银行卡或其他方式支付是否能充值成功;
(14)跨站攻击,数据泄密;
四.我们还要对兼容性进行测试,看看不同的版本、分辨率,不同的浏览器,能否正常充
值;
五.对易用性进行测试,测试充值的整个流程是否易用,遇到一些不懂的有没有相应的温
馨提示;
六、我们还会考虑测试异常的情况:(网络异常和设备异常)
比如说:
(1)充值的过程中突然没网或者网络中断或弱网情况下是否充值成功;
(2)充值过程中突然断电了,能否充值成功;
(3)充值过程中设备卡顿能否充值成功;
(4)银行卡挂失,被注销,卡内余额不足,卡里金额被冻结,额度超过限额的情况能否
充值成功;
七.我们再对界面进行测试:
(1)界面是否美观,格式是否正确,中文是否有错别字;
(2)在其他浏览器能否打开我们这个充值界面,能否正常显示并且正常充值;
(3)界面上的按钮是否符合用户的使用习惯,主要关键的功能按钮是否容易找到,操作是否便捷;
(4)在不同的浏览器里界面缩放后,界面排版是否正常显示
5,产品是怎么上线的?
一般我们会选择晚上上线,开发测试还有客户产品全部到场,进行上线测试
首先,开发将代码打包到生产环境的服务器中,把代码包替换到服务器的目录中。如果
数据表有变化,开发就会运行sql脚本,创建表,修改表的操作;
3)接着,我们测试就开始先测试主体业务功能以及新增的功能模块;
测试通过之后,我们会在界面上把上线测试的数据删除,在规定的日期正常上线。
4)如果发现bug,开发人员当场修复bug,修复成功之后我们测试再复测,通过就可以
正常上线。
5)如果发现了bug开发人员在上线规定时间之前都还没有修复好的话,就看问题的严重性,如果严重就延期上线,或者迭代到下一个版本中。如果我们是迭代版本的话我们还需要版本回滚。如果不严重,产品跟客户觉得可以上线,就正常上线。
6,你提交的bug,开发不认可怎么办?
【首先我会再看需求文档,是不是我的理解有误,如果是我对需求理解错的话我就去关闭bug】
如果是bug再去让身边的同看看听下他们的意见,然
后自己先再三确去复测,并且保存好截图和日志,确定这是一个bug之后我就去跟开发说明
白,并且给他看bug重现的截图以及日志。如果开发还是不认可的话我就跟产品或项目经理说明
白情况,
7,对应无法重现bug,应该怎么处理?
【首先,我会多测几次,测了好多次都无法重现的话我就先把bug挂起。并且留意一下
,看看往后的测试中会不会重现类似代码的bug,因为有些是偶现bug。如果在后面的测
试中重现bug就激活。如果经过几个版本都还没发现的话就关闭bug】
8,原来项目有遇到哪些经典的bug,你是怎么发现的,最后怎么解决的?
【经典bug:1.在理财中心的赚取小金库中,投资人投资收益为负数】
【发现途径:我是在模拟投资人,输入投资金额的时候,显示出来的收益为负数】
【解决:首先我去数据库查找到对应的表,比对结果跟界面显示的数据是否一样,一样
我就把数据库的记录和界面显示截图都保存好。之后提交这个bug,开发人员通过修改
代码,我再复测,没有重现bug】
2、还有一个就是在借款流程中,我们通过修改数据库中的数据,把借款时间修改了,制造出一个逾期未还款的数据,结果显示还款的金额比借款金额还少,而且管理费收得特别高,存在不合理性。3、还有一个是在产品上线后,运维人员在统计数据时发现少了一条数据,我们去数据库检查发现0分0秒的数据没有统计,后来开发人员修改了代码之后就解决了
9,linux你是怎么用的?
(1)在测试执行的过程中,我们发现的bug,有时候需要定位bug,协助开发修复bug
时需要在linux里通过命令tail -200 或tail -500查看当天的日志的后面多少行或者前面多少行定位bug或者通过tail -f来查看日志里的关键字exception(异常)、error(错误)或用重定向(ls -la > ls.txt)把信息保存起来再用vi命令进入信息里然后打开搜索命令shift + :/进入文件定位模式搜索error,fatal(致命),或者exception等