【软件测试学习】web测试学习

web测试技术

目标

掌握功能测试点
掌握易用性测试点
理解性能测试点
掌握兼容性测试点
了解安全性测试

与传统测试异同点

  • 相同之处
    测试内容:功能、性能、易用性、兼容性、安全性等
    测试方法:因果图法、边界值法、场景法等
    测试手段:人工测试、工具测试、评估等
  • 不同之处
    web测试更加注重性能测试和安全性测试
  • 传统测试
    • 性能测试指标:cpu、内存等相同资源使用情况
    • 安全性:用户管理,系统是否有超时限制,相关信息是否写进日志文件,是否可以追踪,服务器端的安全漏洞,信息是否加密等
  • web测试
    • 性能测试指标:事务响应时间(秒)系统处理能力(TPS)最大并发用户数等
    • 安全性:XSS攻击、缓冲区溢出、SQL注入、拒绝服务等

功能测试

评价

软件是否正确实现了需求规格说明书中明确定义的需求
软件是否遗漏了需求规格说明书中明确定义的需求
软件是否将需求规格说明书中未定义的需求实现
软件是否对异常情况进行了处理,容错性好
软件是否满足用户的使用需求

测试点

链接测试
  • 该链接将用户带到它所说明的地方。(所见即所得)
  • 被链接页面存在(响应代码是200)
  • 保证web应用系统上没有孤立的页面(孤立页面:没有链接指向该页面,只能通过输入网站进入)
  • 链接测试工具:Linkbot、Xenu
    1
    1
    1
    • 编写有效的链接
    • 用户想要的是链接通往何处的简短、精炼且正确的细节(只写中心思想)
表单测试

1

  • 内容正确性,通过提交后的数据库内容或者返回的页面信息判断(填写信息,看是否真的有效)
  • 每个字段的等价类和边界值测试(0.-1,7,一,等)
  • 每个字段的类型和实际所接受的数据类型
  • 页面是否有不该有的原代码(联系电话里面的代码)
  • 必填项:(有没填的应该提示)
    • 下拉列表的选择和可填性,如男,女(下拉选择和手动输入)
    • 下拉列表的选择内容提供(客户类型里面的1)
    • 单选框的独选性(选多个,按住ctrl键选多个等)
    • 长文本的滚动条(最大容量)
    • 文本框的格式化(住店日期:应该给出年月日)
    • 提交按钮(正常提交,双击提交,回车提交,弱网提交:有没有返回值,根据业务规则的提交:积分超过500才能提交)
  • UI
    • 页面文字的正确性
    • 页面缩放带来的文字环绕
    • 界面输入框的可承载长度,超过最长长度是否不显示,被截断

cookie测试

cookie设置

1
1

测试方法
  • 屏蔽cookie:将上图设置为阻止,清理所有cookie,然后运行web系统的所有主要功能
  • 有选择性地拒绝cookie,某些cookie接受,web系统工作情况
  • cookie加密测试
    1
    1
  • cookie安全内容检查
    httponly设置为true有助于缓解跨站点脚本威胁,防止cookie被窃取
    secure设置为tue在传输时使用ssl连接,能保护数据在传输过程中不被篡改
    1
测试点
  • cookies是否起作用
  • 是否按预定的时间进行保存
  • 刷新对cookies有没有影响
  • 关键信息是否保密

文件上传测试

  • 只能上传允许的附件类型
    界面上会有提示,根据提示每一个类型都测试到,选择一个没有提到的类型做无效等价类测试
  • 不能上传脚本或者可执行文件
    脚本.js 可执行.exe
  • 不能单纯以后缀名来判断文件类型
    扩展名可更改,把.exe变成.txt迷惑服务器
  • 浏览好文件后,将目标文件删除这种异常情况可以正常处理
    选择了把文件删了,再上传文件,查看会不会在数据库中插入一个null,导致数据库出错
  • 上传超大文件时可以正常处理,如给出提出信息等
    提示上传文件小于20m,采用边界值测试
  • 上传的文件应该提供接口查看
    在这里插入图片描述
    提供了图片的接口,让用户看到自己的数据
  • 上传的文件不应该直接保存于数据库中,而是将文件保存在服务器端硬盘,而在数据库中保存该文件的基本信息
    实体文件放在硬盘,数据库存在文本路径
  • 文件上传到服务器端后应该被重新命名,防止文件名冲突
    不能约束客户行为,当客户上传相同文件名,在上传服务器后,自动添加一些随机数,或者时间戳等,让服务器同一目录下文件不重名

数据库测试

  • 数据库一致性错误
    没有条件限制或回滚功能,错误的记录被保存下来
    (事务:把一整批sql语句批量化执行,要么一次执行成功,执行到一一半就报错了,就全盘回滚到执行之前的状态)
    防止数据库中的sql语句执行到一半出现数据库的脏数据
  • 输出错误:数据源是正确的,但是由于数据传输或在程序设计中数据提取和操作的指令问题
    例如:在月度销售总结报表中出现了数字错误,意味着整条链路会出现问题
    表单输入-----insert语句-----数据库存储-----select语句------网络传输-------报表页面UI处理
    需要一级一级确认
  • 上面两种错误在基于黑盒的表单测试下错误现象是一样的,所以需要进一步确定问题是否是数据库错误
  • 数据库涉及到并发测试和安全性测试

易用性测试

  • 明确最终用户
    • 服务器端用户
    • 客户端用户
    • 两个出错提示比较
  • 图形测试
    • 图片的大小和显示
  • 辅助功能测试
    • 使用说明、导航、站点地图、帮助等

性能测试

  • 性能测试是检验系统性能是否符合要求的测试
  • 性能测试包括压力测试、负载测试、连接速度测试
  • 性能测试的目的:
    • 测算系统的性能指标
    • 查找系统的性能瓶颈
    • 给出较适合的软硬件配置方案
    • 检验硬件配置能否满足客户要求
  • 自动化性能测试工具:LoadRunner、WebLoad、Apache、JMeter、WAS、ACT等

负载测试和压力测试的区别

  • 负载测试时间早于压力测试
    负载是找指标的过程
    压力是超过指标直到崩溃的过程

兼容性测试—服务器端

  • web服务器的版本
    软件的兼容性
  • 数据库的连接
  • 客户端配置
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值