Web测试技术

本文详细介绍了Web测试技术,涵盖了Web基础知识、B/S与C/S结构、Web开发框架、网络协议、Fiddler抓包工具的使用,以及Web功能、性能、兼容性、安全性和可靠性测试的关键点。同时讨论了前端和后端开发技术,以及Web易用性测试的要素。
摘要由CSDN通过智能技术生成

Web基础知识

软件网络结构

C/S结构(客户端、服务器)、B/S结构(web浏览器、web服务器、数据库服务器)
在这里插入图片描述
在这里插入图片描述

Web开发(B/S结构)

分为前端开发(web服务器开发)和后端开发(业务逻辑和数据库服务器开发)

  • 前端开发:HTML、CSS和JavaScript
  • 后端开发:Java、.net、node.js、python

常见的Web服务器:Tomcat\Apache\Nginx\Weblogic\Websphere
在不同操作系统下整套的Web运行集成环境:LAMP(Linux+Apache+MySQL+PHP)、WAMP、XAMPP(Apache+MySQL+PHP+PERL,可以在多个操作系统下安装使用)

Web系统原理

1.浏览器中输入URL的格式:

协议://主机IP[:端口]/资源路径

2.网络协议模型
OSI协议模型(7层):物理层、数据链路层、网络层(将网络地址翻译成对应的物理地址)、传输层、会话层、表示层、应用层
TCP/IP协议模型(4层):网络接口层、网络层、传输层、应用层

3.Web网络协议

  • TCP/IP协议:提供端到端、基于连接的、可靠的通信服务。TCP每次建立连接前3次握手,断开连接时4次挥手。
  • HTTP协议(超文本传输协议):在TCP传输层的上一层,只定义传输的内容,不定义如何传输。
    特点:1.无连接(每次连接只处理一个请求,处理完请求即断开连接)2.无状态(对于事务处理没有记忆能力,后续处理需要前面的信息,则必须重传)
    HTTP请求:请求行、请求头、请求体
    在这里插入图片描述

Fiddler抓包工具

Web测试技术

Web功能测试

  • 单个功能。例如,登录功能
  • 页面连接
  • 功能组合。前面的功能会影响到后面的功能使用。例如,先登录,再进入相应的页面进行测试
  • 脚本功能。Web系统中大量的互动功能使用JavaScript或VBScript脚本实现的。需检查是否会出现当前页面的脚本发生错误。
  • 文件上传/下载。能否正常上传下载,包括文件格式、上传内容、能否正确打开、传输过程中出现中断是否有提示
  • 缓存功能:
    1.Cookie:主要用来保存用户的个人信息,方便用户访问系统时,系统可以调用以前存储的信息。例如,第二次进入系统就可以免登录。测试时注意第二次进入系统时能否免登录,删除cookie时登录是否需要填写账号密码等信息。
    2.session:拥有存储数据的空间,作用范围是一次会话有效。一次会话是使用同一浏览器发送多次请求,一旦浏览器关闭,则结束会话。与cookie不同,session信息一般记录在服务器的内存中。测试时需关注session的失效时间。
    3.cache:用户发起请求,查找顺序依次为本地、cache、服务器。在web系统性能测试时,需关注cache对测试结果的影响。

Web前端性能测试

前端测试需要关注:加载时间、页面容量、资源数量、本地缓存、请求数量
后端测试较复杂,可分为:性能指标测试、压力测试、负载测试、容量测试,一般使用专业性能测试工具,如Jmeter和LoadRunner

  • 加载时间:遵循3/5/8原则
  • 页面容量:需检查每次加载的数据大小、文件大小规格是否复合需求和设计要求
  • 资源数量:在服务器响应传输时,如果资源太多,会降低加载速度,要减少无效资源的传输
  • 本地缓存:某些网站资源被缓存到浏览器端,方便用户二次访问网站查看,加快加载速度
  • 请求数量:尽量减少HTTP请求(这样可以减少DNS请求耗费的时间、减少服务器压力、减少HTTP请求头)

前端性能优化方式:

  • 减少HTTP请求次数
  • 避免空的src和href
  • 使用gzip压缩内容
  • 把CSS放到顶部
  • 把JS放在底部
  • 减少cookie的大小

Web兼容性测试

一般只考虑浏览器端的兼容性:

  1. 不同浏览器的兼容性,Chrome、FireFox、Edge、Safari
  2. 操作系统的兼容性(app测试的重点)
  3. 不同显示分辨率下的测试

Web安全性测试

常见的有:目录设置、口令验证、用户权限、SQL注入、跨站脚本发攻击XSS

  1. 目录设置:通过图片的属性可以查看上一级目录的路径,进而直接获取目录下所有图片资源。
  2. 口令验证:主要关注密码强度、密码的密文显示、是否加密传输、验证码
  3. 用户权限。例如每个权限组的用户权限是否与设计一致,未登录用户是否可以浏览信息
  4. session和cookie安全。防止伪造session和恶意读取cookie,测试时需要关注session的失效机制及失效时间、cookie记录与读取的权限。
  5. SQL注入。在地址栏或web的输入框中,输入非法的SQL语句,从而达到避开服务器验证,获取访问权限的目的。实际测试中,可以使用SQLmap等安全测试工具对网站进行安全测试。
  6. 跨站脚本发攻击XSS。当用户访问注入了恶意代码的Web系统时,用户的cookie或session等敏感信息可能被截获。

Web可靠性测试

又叫稳定性测试,通常在性能测试中实施,一般需要给系统施加一定负载(70%-90%),时间达8小时以上,计算平均故障间隔时间 MTBF=总工作时间/总失效次数

Web易用性测试

主要测试web的ui界面

  • 13
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值