web基础学习
什么是web
Web是一种基于超文本和HTTP的、全球性的、动态性的、跨平台的分布式图形信息系统。
静态web:web页面中共人们浏览的数据始终是不变的
动态Web:web页面中浏览的数据是由程序产生的,页面具有交互性,内容可以动态更新
C/S 架构 client Server 客户端服务器,是一种分布式的计算机型。客户端和服务器之间通过网络进行通信,客户端向
服务器发送请求并响应。
B/S架构 browser Server 浏览器服务器,是一种基于Web的分布式计算机模型。在B/S架构中,客户端使用Web
浏览器作为前端界面,通过互联网向服务器发送请求,服务器接受请求并响应,将动态生成的HTML页面或数据返回给客户端。
javascript:一种脚本编程语言,通常用于网页交互和动态效果。为了给网页添加另外一种动态性而创建的,
可以跨平台运行。与html和css相比,javascript是一种基于对象和实践驱动的编程语言,能为Web页面提供更加动态化、互动性强的用户体验。
HTTP和HTTPS之间相比较,HTTPS进行了加密,HTTP协议是明文传输,数据传输的过程不加密,无法防
止数据被第三方窃取、篡改或劫持。而HTTPS协议则采用了SSL/TLS协议进行加密,可以保证数据传输的安全性,
是的第三方无法轻易地窃取或篡改传输数据
所以在抓包的时候,使用其他的工具如Charles进行抓包,就会拉去不到数据,能抓到接口,但是数据为乱码,unknown,不能直接观看。
Http请求状态码
-
1**:信息,服务器收到请求,需要请求者继续执行操作。(100)
-
2**:成功,操作被成功接收并处理。(200)
-
3**:重定向,需要进一步的操作以完成请求(301,302,304)
-
4**:客户端错误,请求包含语法错误或无法完成请求(401,403,404)
-
5**:服务端错误,服务器在处理请求的过程中发生了错误(500,502,504)
Web测试方法
通过查看日志信息、请求方式、请求状态、请求头信息来对数据进行分析。
Web容器
提供了通用的Web容器,H5资源的运行环境,并为native和H5建立起通信通道(SDK)
(业务层(H5资源)、容器层(Web容器)、原生层(WebView、Webkit))
-
客户端原生应用:绝对不能出错,使用native,如首页、我的页面、扫一扫
-
网页应用:web容器生成如大促,能够快速的搭建
-
混合应用
Web容器的主要功能
-
框架:提供客户端上web页面的运行环境,负责解析页面URL,处理页面的打开/关闭/跳转,设置进度条颜色/页面亮度/是否支持滑动等属性,以及生命周期内的事件和数据通信等
-
离线化:预下载web页面所需的静态资源。并存储到本地,可以降低页面加载过程中静态资源的网络请求好事,从而达到提高页面打开速度的效果
-
桥:是Native和Web双向通信的接口,桥的前端和客户端之间定义好通信协议,业务的H5代码就可以无差别的使用原生能力。如业务调用获取位置信息接口,可以得到手机GPS的经纬度信息(前端实现桥都一样,从IOS容器/Android容器开始后面的客户端实现桥不同)
-
后端服务:不需要在客户端处理的逻辑,可以搭建后端服务,既可以降低客户端的复杂度,有不限于客户端的限制
上游:提供数据
下游:获取数据
Web容器的质量保障
-
基础组建:稳定一致高效
-
测试方法
-
常用测试点:
-
被测地址符合URL规范
-
页面打开/关闭/跳转正常
-
页面内资源渲染正常
-
标题栏现实与功能按钮正常
-
跨页面数据同步与通信正常
-
桥接口返回值存在且正确
-
网络请求Response
能不能用:功能正确
好不好用:稳定运行
有多少人用:性能资源
微信小程序
微信小程序的优点
-
无需下载
-
跨平台使用
-
快速启动
-
应用场景广泛
-
数据共享
-
易于推广
-
充分发挥了微信社交属性
微信小程序的测试方法
-
微信账号要求
-
微信号需要有开发者权限,体验者权限,可联系对应PM
-
-
小程序测试流程
-
小程序的开发版本
-
体验版测试
-
线下测试
-
-
如何访问小程序提测包
-
提测二维码可用rd提拱,可在ruler管理平台中手动生成测试二维码
-
-
小程序兼容性测试
-
除了手机不同设备和系统的兼容性,还需要考虑微信的不同版本的基础库
-
-
小程序抓包
-
微信小程序可连接Charles进行抓包
-
-
如何切换环境
-
debug功能,可在debug面板中进行环境切换
-
-
小程序的测试过程
-
开发版进行需求测试
-
体验版进行回归测试
-
线上灰度时进行线上回归测试
-
-
小程序的上线过程
-
小程序整体业务均在体验版上回归测试通过,小程序提交微信审核,审核过程之后,
按灰度阶段进行放量,直至100%全量
-
被测地址符合URL规范
-
页面打开/关闭/跳转正常
-
页面内资源渲染正常
-
标题栏显示与功能按钮正常
-
跨页面数据同步与通信正常
-
桥接口返回值存在且准确
-
网络请求Response
-
组件
-
组件属性值动态设置正常
-
组件互斥属性值设置正常
-
组件非互斥属性值设置正常
-
组件样式动态设置正常
-
API
-
参数动态设置正常
-
组件api互动正常
-
多个相关api互动正常
-
为什么要做测试用例
-
测试基础:测试用例是一切测试能力的基础
-
理清思路:理清测试思路,避免漏侧或重复执行
-
跟进进展:预估风险,跟踪测试进展,及时发现进度风险
-
过程质量:测试过程中遇到的所有问题,发现的缺陷数量
结果质量:上线后有没有报警,有没有回滚
测试用例设计思路与方法
作者内容匹配,小说内容匹配,小说内容不乱码,封面匹配,榜单排序,筛选结果分类,正常打开,模糊匹配,加入书架,搜索记录,搜索内容,浏览历史,免费阅读,
设计步骤:
分析测试对象->选取合适的方法设计测试用例->测试执行-> 分析覆盖完善用例
基本内容:
优先级+前置条件(在什么条件下)+测试步骤(做什么事情)+预期结果(得到了什么结果)
测试用例评估
-
用例描述准确,无二义性
-
用例详细,可操作性
-
用例完备,有效用例集合,需求覆盖全
-
用例无冗余,执行效率高
-
积累经验:测试的核心资产之一,积累测试经验
-
网络基础
物理层 数据链路层 网络层 传输层 会话层 表示层 应用层
UDP通过丢包的形式,微信电话,直播等,卡顿后可以再次恢复
TCP 传输文件更快,讲究速率,实时性地
HTTP:通过HTTP请求web服务器,Web服务器收到请求后,会发送HTTP响应将请求的HTML、CSS、JavaScript等资源文件返回给客户端。
dns从后往前解析
DNS是将域名转换为IP地址和反向转换的系统。简而言之,DNS就像互联网的电话簿。当你在浏览器中输入一个网站的域名时,DNS服务器会查找相应的IP地址并将其发送回你的计算机,从而允许你连接到网站。DNS还在电子邮件通信中发挥着至关重要的作用,它可以根据收件人的域名将电子邮件路由到正确的电子邮件服务器。
长链接:游戏,直播,
短链接:微信朋友圈
泳道:相互隔离的测试环境
-