前言
最近呢有很多的小伙伴问我有没有什么软件测试的面试题,由于笔者之前一直在忙工作上的事情,没有时间整理面试题,刚好最近休息了一下,顺便整理了一些面试题,现在就把整理的面试题分享给大家,废话就不多说了直接进入正文哈。
1、网上银行转账是怎么测的,设计一下测试用例。
回答思路:
宏观上可以从质量模型(万能公式)来考虑,重点需要测试转账的功能、性能与安全性。设计测试用例可以使用场景法为主,先列出转账的基本流和备选流。然后设计场景,最后根据场景设计数据。实际面试中需要举出具体的例子。
·先检查界面
·再测试功能:
验证同行转账,跨行转账。
验证转账限额。
验证非法账户(挂失,冻结,锁定的账户)的转账。
再测试性能方面的。
2、测试工作的流程?缺陷状态有什么?设计测试用例有几种方法?
测试工程师的实际工作流程(以P2P中型版本为例,一个月一个版本):
产品经理或者SR把需求书发下来给开发和测试。
测试先看一遍,进行需求分析。测试组长编写测试计划,并且分配测试任务给测试人员(2天时间)(此时开发也在进行需求分析)
过了2天,产品经理再把测试和开发召集在一起,进行需求讲解(或者说需求评审),有问题可以直接问,如果发现需求有问题,也可以提出来,SR回去会修改。(需求讲解时间0.5天)
讲完需求后,测试同事要进行测试场景的梳理和案例的编写了(xmind和Excel就要用上了),一共5个工作日。(此时开发在编写代码)
之后就要进行案例评审了,评审时候有SR、测试同事、开发同事,评审时候一般SR、测试组长、对应模块的开发同事会提出一点意见,评审完之后,回去修改、补充一下案例。(案例评审0.5天)。
修改完以后,有两种处理情况:
对大项目有时候要进行案例的第二次评审。
对小项目,在时间紧的时候,一般不会二审,但是要以邮件的形式把修改或者新增后的案例发出来,给领导看,并抄送给其他同事。(案例评审0.5天,修改案例0.5天,案例二审0.5天)
案例评审完就要开始测试了,一般测试环境开发搭建好(要说自己也会搭建,搭建流程背老师总结的):
中型版本的测试一般分2轮:第一轮:5天;第二轮:3天;回归测试2天;(共10个工作日)。
回归测试完后,达到了上线标准,就会如期上线,一般当天晚上12点上线。
3、在项目中找到的经典BUG是什么?
兼容性问题,在ie浏览器,提交订单按钮可以点击,到了谷歌,火狐就不能了。
查询订单页面,根据条件筛选的结果不是想要的结果,还有某些字段的值没有显示出来,或者显示错误。(因为开发从库表取值有误)
付款成功后,订单状态一直不翻转为交易成功。(因为代码没有正确获取库表中付款成功记录的状态码)
修改支付密码,新密码和原密码一致,也通过了,系统没有做新旧密码的校验。
付款时候的手机验证码,可以一直使用,没有成功做有效期控制。
手机app断开网络后,再去点击,没有友好的错误页面提示网络已断开,只有undefined返回。
4、定期存款到期自动转存该怎么测?
回答思路:到期肯定会有边界,所以设计里面可以考虑边界值法。自动转存。(首先要搞清楚什么是自动转存)
存钱该怎么测,用什么测试方法?
准备思路:存钱要分类:活期、零存整取等(具体规则百度下),然后根据每类的业务规则选择合适的用例设计方法。譬如一次最少存入多少?最多一次能存入多少等。
5、登录功能如何设计测试用例?
功能测试(FunctionTest)
1、输入正确的账号和密码,点击提交按钮,验证是否能正确登录。(正常输入)
2、输入错误的账号或者密码,验证登录会失败,并且提示相应的错误信息。(错误校验)
3、登录成功后能否跳转到正确的页面。(低)
4、账号和密码,如果太短或者太长,应该怎么处理。(安全性,密码太短时是否有提示)
5、账号和密码,中有特殊字符(比如空格),和其他非英文的情况。(是否做了过滤)
6、记住账号的功能。
7、登录失败后,不能记录密码的功能。
8、账号和密码前后有空格的处理。
9、密码是否加密显示。(星号圆点等)
10、牵扯到验证码的,还要考虑文字是否扭曲过度导致辨认难度大,考虑颜色(色盲使用者),刷新或换一个按钮是否好用。
11、登录页面中的注册、忘记密码,登出用另一帐号登录等链接是否正确。
12、输入密码的时候,大写键盘开启的时候要有提示信息。
13、什么都不输入,点击提交按钮,看提示信息。(非空检查)
界面测试(UITest)
1、布局是否合理,2个Testbox和一个按钮是否对齐。
2、Testbox和按钮的长度,高度是否复合要求。
3、界面的设计风格是否与UI的设计风格统一。
4、界面中的文字简洁易懂,没有错别字。
性能测试(PerformanceTest)
1、打开登录页面,需要几秒。
2、输入正确的账号和密码后,登录成功跳转到新页面,不超过5秒。
安全性测试(SecurityTest)
1、登录成功后生成的Cookie是否有HttpOnly。(降低脚本盗取风险)
2、账号和密码是否通过加密的方式,发送给Web服务器。
3、账号和密码的验证,应该是用服务器端验证,而不能单单是在客户端用javaScript验证。
4、账号和密码的输入框,应该屏蔽SQL注入攻击。
5、账号和密码的的输入框,应该禁止输入脚本。(防止XSS攻击)
6、错误登录的次数限制。(防止暴力破解)
7、考虑是否支持多用户在同一机器上登录。
8、考虑一用户在多台机器上登录。
可用性测试(UsabilityTest)
1、是否可以全用键盘操作,是否有快捷键。
2、输入账号,密码后按回车,是否可以登录。
3、输入框是否可以以Tab键切换。
兼容性测试(CompatibilityTest)
1、主流的浏览器下能否显示正常已经功能正常。(IE6~11,FireFox,Chrome,Safari等)
2、不同的平台是否能正常工作,比如Windows,Mac。
3、移动设备上是否正常工作,比如iPhone,Android。
4、不同的分辨率。
6、电商平台的核心业务是什么?购物车如何进行测试?
电商平台主要是个商品销售平台,所以商品的查找,加入购物车,结算并支付是电商平台的核心业务,也就是整个商品的购买流程。
购物车的测试主要考虑以下几个方面(掌握思路即可):
1、界面测试,购物车中的商品信息显示是否正常,加入购物车后的商品价格是否显示正常。
2、功能测试,从商品详情页面是否可以加入商品到购物车。
3、购物车页面打开的同时,在其他页面添加了商品,购物车刷新后,新的商品能否显示。
4、若未登录,点击加入购物车,是否可以添加进购物车(缓存方式)或者会直接提示登录。
5、在商品未选择的状态下,结算是否按钮为灰色无法点击。
6、勾选商品后,结算按钮为可点击状态。
7、勾选商品后,自动计算商品的总价,价格是否正确。
8、勾选商品后,点击结算按钮,进入确认清单的页面
9、在购物车中,可以修改商品的数量。
10、在购物车中,可以将已加入的商品移除购物车。
11、在购物车中,可以讲商品移入收藏夹,移入收藏夹后,商品在购物车中不显示。
12、购物车中的商品是否显示优惠或促销信息。
13、批量添加商品到购物车。
14、在购物车中批量移除商品。
15、性能测试。
16、打开购物车页面要多久。
17、最多可以添加多少商品到购物车中。
18、批量添加商品和移除商品的速度如何。
19、兼容性测试。
20、如果是web商城,测试在不同的浏览器上功能是否正常。
21、如果是app,测试在不同手机品牌,不同操作系统版本和不同分辨率下的功能是否正常。
作者:自动化测试七叔