【黑马软件测试三】web功能测试、抓包

阶段三,内容看情况略过

Web功能测试

通过浏览器访问的项目叫做Web项目,web测试是基于BS架构的软件产品测试。通俗点说就是web网站的测试

架构:B/S Browser Server

C/S Client Server

面试题:如何解决开发和测试进度冲突问题?

答:区分开发周和测试周,开发工作时(开发新功能)不测试,测试工作时开发不进新代码。

web功能测试包括哪些方面:

链接测试,表单测试,搜索测试,删除测试,cookies、session测试,数据库测试

链接测试

测试所有链接是否安装指示的那样确实到了该连接的页面

测试所链接的页面是否存在

测试web应用系统上没有孤立的页面

表单测试

表单一般指在界面进行数据的提交操作,包括新增和修改数据。他涉及到的测试包括以下方面:

  1. 输入框测试

长度,数据类型,必填项,重复,空格,sql注入以及一些业务相关约束

  1. 下拉框测试

默认值、数据完整性/正确性、第一个/最后一个/中间一个选取、手动输入值模糊匹配、联动选择;业务常见选取的操作

  1. 图片、视频、excel、txt等文件上传测试

大小,尺寸,格式,数量,文件内容规则验证

  1. 表单提交按钮测试

是否支持回车/单机、快速多次点击是否重复提交表单、网络中断(弱网)提交、提交之后是否有提示、提交后内容是否加密、提交是否做权限校验控制、多人针对表单同时操作的场景测试

搜索测试

搜索条件一般为2种情况:输入框、下拉框。对于多个条件的页面搜索可以按照下面的编号顺序去进行测试。

1)任单个条件查询:模糊搜索、超长搜索、不存在与之匹配的条件、为空

2)任两个组合查询:确保任两个组合查询的正确性,验证两个组合的所有情况。

3)三个组合查询:不需要测试三个组合的全部级组合。因为前面针对所有单个条件的搜索、两个组合的所有组合进行测试了,那么在这里选择2-3组三种组合进行测试即可。

4)全条件组合查询:确保最大组合的正确性。

5)默认条件查询:补充默认条件查询的用例

6)根据需求或者业务规则选取重点条件组合查询

在这里再给大家普及下,搜索框搜索还有一种常见的情况就是:时间输入框

关于按时间来搜索的测试点,可以从以下考虑:

1)开始时间<=结束时间,测试一个小时、跨时、当天、跨天、跨月、跨年的数据

2)开始时间大于/小于当前时间,若是针对出生年月搜索,验证大于的情况;若是定时任务时间搜索验证小于的情况

3)只输入开始时间/结束时间

4)开始时间、结束时间都不输入

5)结束时间早于开始时间

6)手动输入时间,注意时间格式验证

删除测试

1)没选择数据,点击删除 ---是否有友好提示

2)选择一条数据,点击删除 ---是否提示删除确认信息,需二次确认

3)删除一条数据后,点击添加 ---是否可以添加相同的数据

3)连续删除多个产品,选择批量删除 ---是否支持

4)选择全选,点击删除 ----注意是否把所有的数据删除

5)删除一个有关联性的数据,(如删除QQ分组,组下好友会有提示)

6)所有删除数据操作,要注意相应查询页面及其关联界面的数据是否及时更新

cookies/session测试

cookies/session通常用来存储用户信息,Cookie通过在客户端记录信息确定用户身份,session通过在服务器端记录信息确定用户身份。

cookies/session测试同理,测试的内容可包括:

1)打开WEB系统后,在浏览器默认存储cookies的目录下看此cookies目录是否存在。

2)已知cookies的保存时间,测试时间范围之内和之外的cookies文件是否正常

3)将浏览器下的所有cookies文件全部删除。再次登录web系统,会怎么处理

数据库测试

数据库测试实际就是通过前面讲过的测试手段来完成、只不过关注点是数据库表及表字段值的变化。

1、数据库脚本执行---数据库表添加、修改是否正常

2、页面提交表单、修改、查询、删除 ---数据库表信息是否正常

抓包工具的使用

这部分移到另一篇blog了->传送

一个APP的完整测试流程

熟悉APP业务流程

迭代速度不同,开发模型不一样

传统行业是瀑布模型

互联网行业是敏捷模型

瀑布模型测试介入的时间很晚,整个周期也会变长

而敏捷模型就会高效很多

敏捷模型的流程:

产品规划产品功能列表->产品组织迭代计划会,拆分需求,确定迭代周期->迭代开发,需求评审\开发\测试->发布评审会

上线策略(灰度发布):

APP如何发布?

软件包格式

安卓:xxx.apk

苹果:xxx.IPA

APP包如何发布和管理?

通过公共平台给测试,比如蒲公英,如果没有公共平台,要使用内部服务器

APP包如何发布给用户?

通过第三方平台

功能测试

APP测试和Web测试一样吗?一样的

APP测啥?功能测试、专项测试、性能测试

能完成APP拼团购、注册模块的功能测试

这里不去一个个列了

APP专项测试

专项测试要测什么?以下:

兼容性
  • 考虑手机型号:覆盖市场主流机型,华为三星小米OPPO
  • 系统版本:安卓系统和iOS系统
    分辨率、屏幕尺寸
  • 网络:2G\3G、4G还有WIFI,尤其是网络切换的过程中,程序是否出现异常
  • 应用兼容性:比如手机硬件、外部硬件、操作系统、其他APP

其中应用兼容性的测试点

  • 与手机硬件兼容:home键,电源键,音量调解
  • 与外部硬件设备兼容:耳机、蓝牙
  • 与操作系统软件兼容:系统时间调解、LBS定位等
  • 与其他app兼容:后台在播放音乐时,进入动态页面点击动态视频的播放,系统如何处理

怎么测?

将APP安装在不同手机上,模仿用户

有一些在线平台测的,一般付费,可以模拟各种版本和机型

安装、卸载和升级

安装:

卸载:

交叉测试(干扰测试)

指一个功能正在执行过程中,另一个事件或操作对该过程进行干扰的测试。例如在APP前台/后台运行的同时接听来电或者下载文件等等

push消息测试

push消息就是APP给你推送的各种消息

通常设置-通知就是进行push消息的设置

用户体验测试

以主观消费者角度去感知产品

UI界面测试,横竖屏测试,易用性测试,关注手机应用上的其他辅助功能

相关推荐
前端李易安34 分钟前
Web常见的攻击方式及防御方法
前端
PythonFun1 小时前
Python技巧:如何避免数据输入类型错误
前端·python
hakesashou1 小时前
python交互式命令时如何清除
java·前端·python
天涯学馆1 小时前
Next.js与NextAuth:身份验证实践
前端·javascript·next.js
HEX9CF1 小时前
【CTF Web】Pikachu xss之href输出 Writeup(GET请求+反射型XSS+javascript:伪协议绕过)
开发语言·前端·javascript·安全·网络安全·ecmascript·xss
ConardLi1 小时前
Chrome:新的滚动捕捉事件助你实现更丝滑的动画效果!
前端·javascript·浏览器
ConardLi2 小时前
安全赋值运算符,新的 JavaScript 提案让你告别 trycatch !
前端·javascript
凌云行者2 小时前
使用rust写一个Web服务器——单线程版本
服务器·前端·rust
华农第一蒟蒻2 小时前
Java中JWT(JSON Web Token)的运用
java·前端·spring boot·json·token
积水成江2 小时前
关于Generator,async 和 await的介绍
前端·javascript·vue.js