软件测试面试2

软件测试常见面试题分享2

1.浏览器访问url中间发生了什么
以www.baidu.com为例
1.域名解析:把www.baidu.com解析成对应的IP地址
2.浏览器根据IP地址与目标web服务器在80端口上建立TCP连接(三次握手)
3.向目标服务器发送http请求,常见的web服务器有Apache、Nginx、IIS、Node等
4.后端服务器处理请求,返回报文结果(无效、重定向、正确响应)
5.浏览器解析HTML渲染页面
6.最终完成也页面展示,连接结束

2.如何定位一个bug是前端的问题还是后端的问题
通常这样判断:
1.先抓包看请求报文,对照接口文档,看请求报文有没有问题,有问题就是前端发的数据不对
2.请求报文没有问题,那就看返回的报文,返回的数据不对,那就是后端开发的问题

3.如何测试登陆页面
(1).功能测试

  1. 输入正确的用户名和密码,点击提交按钮,验证是否能正确登陆
  2. 输入错误的用户名或密码,验证登录会失败,并且提示相应的错误信息
  3. 登录成功后是否能跳转至正确的页面
  4. 用户名和密码,输入太长会怎样处理
  5. 用户名和密码中含有特殊字符或其他非英文的情况
  6. 记住用户名的功能
  7. 登录失败后,不能记住密码的功能
  8. 用户名和密码前后有空格的处理
  9. 密码是否非明文显示,使用星号圆点符号代替
  10. 涉及到验证码时,需要考虑文字是否扭曲过度导致辨别难度较大,考虑颜色(色盲使用者) ,刷新或换一个按钮是否易用
  11. 登录页面的注册,忘记密码,登出用另一种账号登录的链接是否正确
  12. 输入密码大的时候,大写键盘开启时是否有提示信息
  13. 什么都不输入,点击提交按钮,检查提示信息

(2).界面测试
1.布局是否合理,textbox和按钮是否对齐
2.textbox和按钮的长度,高度是否符合要求
3.界面的设计风格是否与UI的设计风格统一
4.界面的文字简洁易懂,没有错别字

(3).性能测试
1.打开登录界面,需要的时间是否在需求要求的时间内
2.输入正确的用户名和密码后,检查登陆成功跳转到新页面的时间是否在需求要求的时间内
3.模拟大量用户同时登录,检查一定压力下能否正常登录跳转

(4).安全测试
1.登录成功后生产的cookie,是否是httponly(否则容易被脚本盗取)
2.用户名和密码是否通过加密的方式,发送给web服务器
3.用户名和密码的验证,应该是后端进行验证,不单单只在前端进行验证
4.用户名和密码的输入框,应该屏蔽SQL注入攻击
5.用户名和密码的输入框,应该禁止输入脚本(防止XSS攻击)
6.防止暴力破解,检测是否有错误登录的次数限制
7.是否支持多用户在同一机器上登录
8.同一用户是否能够在多台机器上登录

(5).易用性测试
1.是否可以全用键盘操作,是否有快捷键
2.输入用户名,密码后按回车,是否可以登录
3.输入框是否可以用TAB键切换

(6).兼容性测试
1.不同浏览器下能否显示正常且功能正常(IE 6,7,8、Firefox、Chrome、Safari等)
2.同种浏览器不同版本下能否正常切换且功能正常
3.不同的平台能否正常工作,比如Windows、Mac
4.移动设备上是否正常工作,比如Android、iOS
5.不同的分辨率下能否正常显示

4.如何对一瓶矿泉水进行测试

  1. 功能性:查看水瓶是否漏水,瓶中的水能不能被正常喝到
  2. 安全性:瓶子的材质有没有毒或者细菌
  3. 可靠性:从不同高度落下的损坏程度
  4. 可移植性:在不同的地方、温度等不同环境下是否都可以正常使用
  5. 兼容性:是否能够容纳果汁、汽油、酒精等
  6. 易用性:是否烫手、是否有防滑措施、是否方便饮用
  7. 界面测试:查看外观是否美观
  8. 用户文档测试:使用手册是否对用法限制、使用条件等有详细的描述
  9. 疲劳测试:将盛上水放置24小时检查泄露时间和情况;盛上汽油放置24小时检查泄露时间和情况
  10. 压力测试:用根针并在针上面不断施加重量,看压强多大时会穿透
  11. 跌落测试:测试在何种高度下跌落会破坏水瓶

5.对朋友圈点赞功能进行测试

  1. 是否可以正常点赞和取消
  2. 点赞的人是否在可见分组里
  3. 点赞的状态是否能够即时刷新显示
  4. 点赞的状态,共同好友是否可见
  5. 不同手机,系统显示的界面如何备注
  6. 性能检查,网速快慢对其影响
  7. 点赞显示的是否正确,一行有几个
  8. 点赞是否按时间进行排序,头像对应的是否正确
  9. 是否能在消息列表中显示点赞人的昵称
  10. 可拓展测试,点赞后是否可以发表评论
  11. 是否在未登录时可查看被点赞信息

6.web测试和app测试的不同

  1. 系统架构方面:web项目一般采用b/s架构,是基于浏览器的;app项目则是采用c/s架构,必须要有客户端,用户需要安装客户端;web项目只需要更新服务端,客户端就会同步更新,app项目则需要客户端和服务端都更新。
  2. 性能方面:web页面主要会关注响应时间,而app还会关心流量、耗电量、CPU、GPU、Memory这些;它们在服务端的性能没区别,都是一台服务器。
  3. 默认兼容配置方面:web是基于浏览器的,所以更倾向于浏览器和电脑硬件,电脑系统方向的兼容;app测试则会看分辨率,屏幕尺寸,还要看设备系统;web测试是基于浏览器的,所以不必考虑安装卸载,而app会涉及安装、卸载和更新,除了之外还会有一些异常场景,比如在安装时的中断、安装后删除安装文件等操作,同时app测试还会包含一些专项测试,如网络、适配性、协议等。

7.如何测试网络协议

  1. 一致性测试:检测协议实现本身与协议规范的符合程度
  2. 互操作性测试:基于某一协议检查不同协议实现间会操作互通信的能力
  3. 性能测试:检测协议实现的性能指标,比如数据传输速度、连接时间、执行速度、吞吐量、并发量等
  4. 健壮性测试:检测协议实现在各种恶劣环境下运行的能力,比如注入干扰报文,通信故障,信道被切断等
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值