IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> web测试考试总结 -> 正文阅读

[网络协议]web测试考试总结

WEB测试考试范围

问题1:http协议、网络三种架构及特点、web应用的特点

HTTP:?超文本传输协议,是互联网上应用最广泛的一种网络协议。所有www文件都必须遵守的一个标准,是以 ASCII 码传输,建立在 TCP/IP 协议之上的应用层规范,简单点说就是一种固定的通讯规则。 现在常用的是1.1版本 客户端和服务端的一种协议

网络应用程序架构包括三种:
客户机/服务器结构(C/S):
	需要安装特定的客户端程序;
	针对不同平台开发不同版本;
	升级应用需重新安装;
	能够直接使用客户端硬件资源;
浏览器/服务器结构(B/S):
	客户端无需安装,有Web浏览器即可;
	跨平台能力;
	无缝升级,客户端免维护;
P2P结构:
	点到点系统,不需要服务器中转;
	客户端与客户端彼此直接通信;

Web应用的特点:
	Web应用是图形化和易于导航的;
	Web应用与平台无关;
	Web应用是分布式的;
	Web应用是动态的;
	Web应用是交互的;

问题2:URL组成、HTTP协议的性质、请求响应报文的格式,请求方法,HTTP缓存,缓存新鲜度如何判断

统一资源定位符:URL的组成:协议protocol、域名(主机名)(IP地址)、端口号、path(路径)、参数(问号后面,键值对存在,键值对之间以&l连接)
默认端口号: http 80 https 443
HTTP协议的性质:简单的(请求行能看懂)、可扩展的(字段可以添加)、无状态,有会话的,可靠的(基于TCP连接的)

HTTP工作过程(基于TCP,HTTP是不安全的):建立TCP连接—请求文档—响应文档—释放TCP连接

请求报文:请求行(请求方法、请求URL,HTTP协议及版本)、请求头、请求体(请求正文)

Host代表请求的域名、Cookie标识用户信息 、User-Agent代表用户代理、Referer代表请求来源,跨站点请求伪造检查referer
请求体:发给服务器的数据。 get没有请求体,post有请求体,post更安全

常用的请求方法:get\post\put\delete ........

响应报文:响应行(协议和状态码)、响应头、响应体
状态码:1xx  2xx成功响应 3xx重定向 304代表使用到缓存的重定向 4xx 客户端错误 5xx

响应头:set cookie只有响应头中有,请求头中没有
响应体:
主要请求方法:GET   POST  HEAD   PUT   DELETE   TRACE   CONNECT   OPTIONS
HTTP缓存:缓存是一种保存资源副本并在下次请求时直接使用该副本的技术。(缓解服务器的压力,提升性能)
判断缓存新鲜度:两种方式
1. Last-Modified 和 If-Modified-Since 文件修改时间   请求头、响应头 中的时间一样时缓存有效
2. ETags 和 If-None-Match  根据内容生成的字符串, 优先使用ETag 

问题3:HTTP重定向原理以及状态码,HTTPS协议、数字证书,HTTPS与http协议的区别

在HTTP协议中,重定向操作有服务器通过发送特殊的响应而触发。HTTP协议的重定向响应的状态码为3xx。浏览器在接受到重定向响应的时候,会采用该响应提供的新的URL,并立即进行加载

状态码:3开头的,

HTTPS协议是以安全为目标的HTTP通道,其实就是HTTP的升级版本

数字证书:是由权威的CA机构给服务端进行颁发。最重要的是公钥在数字证书中。也有持有人的相关信息

HTTPS是安全的,HTTP是不安全的

HTTPS的实现原理(那个图):客户端发送请求给服务端,服务端返回证书到客户端让客户端校验。客户端校验合法的话,客户端随机生成密钥R,用证书中的公钥加密R,传递加密后的R到客户端,用私钥解密,获取R,使用R加密网页内容,进行传输



HTTP协议和HTTPS协议的主要区别:
1.HTTP是超文本传输协议,信息是明文传输,HTTPS则是具有安全性的SSL加密传输协议
2.HTTP采用80端口连接,而HTTPS则是443端口
3.HTTPS协议需要到ca申请证书,一般免费证书很少,需要交费,又有些web容器提供,HTTP协议不需要

问题4 :web客户端的作用,服务端作用的,集群环境作用

web客户端的作用:用来发送HTTP请求、接收服务器响应、把服务器返回的HTML代码渲染成界面
web服务器的作用:监听客户请求、处理客户端的简单请求(一般静态页面)(解析JS代码,返回响应)、客户端与数据库之间的屏障、处理复杂系统的业务和数据库的访问

集群环境作用:服务器集群。多个不同的服务器,可以实现负载均衡;多个相同的服务器,做备份,可以实现故障转移

问题5 :cookie是什么,cookie的作用,Cookie的类型,Expires属性决定cookie的类型

cookie是一小段文本信息 ,存放在客户端,用来标识用户
cookie的作用:用于辨认用户状态
Cookie的两种类型:会话Cookie 、 持久性Cookie(本地存储,有有效期)

Expires属性的maxAge字段 决定cookie的类型

问题6:Session的作用,原理,Session id 的两种传递方式,Session和Cookie的区别

Session对象存储特定用户会话所需的属性及配置信息。(用户相关信息)
Session的原理
	1. 用户第一次请求服务器时,服务器端会生成一个sessionId
	2. 服务器端将生成的sessionId返回给客户端,通过set-cookie
	3. 客户端收到sessionId会将它保存在Cookie中,当客户端再次访问服务端时会带上这		个sessionId
	4. 当服务端再次接收到来自客户端的请求时,会先去检查是否存在sessionId,不存在	就新建一个sessionId重复1,2的流程,如果存在就去遍历服务端的session文件,找到		与这个sessionId相对应的文件,文件中的键值便是sessionId,值为当前用户的一些信	      息
	5. 此后的请求都会交换这个 sessionId ,进行有状态的会话
	
Session的两种实现方式:
	通过Cookie实现、通过URL重写来实现

Session 与Cookie的区别
	1. Cookie的数据保存在客户端浏览器,Session保存在服务器
	2.服务端保存状态机制需要在客户端做标记,所以Session可能借助Cookie机制
	3.Cookie通常用于客户端保存用户的登录状态
	4.Session是可以存取任何类型的数据的,但是Cookie只能存入字符串
	5.Cookie存储数据大小有限制,Session没有限制
	
	token的原理(那个图):1. 2. 3. 4. 5.
	作用:解决session的弊端
	
	什么是URL编码(有百分号)、base64编码(传输不可打印字符,编码后传输) 、MD5编码(不可逆解的编码方式)、HTML实体化编码(有些符号是想要输出的,比如大小于号,不能被当做标签)

问题7: web测试的类型以及测试的内容

web测试的类型:界面测试、功能测试、性能测试、兼容性测试、安全性测试、自动化测试
界面:
功能
性能
兼容性
安全性

选择题:哪些测试属于什么测试?

问题8: 移动端三种开发模式,H5优点,app、web、h5测试的区别

移动端常用的三种开发模式,主要有原生APP(Native App)、混合APP(Hybrid App)、WEB APP三种

三种开发模式的特点:原生APP(页面放在本地,不需要从网上拉取)
H5的优点: 跨平台优势、强化了web网页的表现性能、追加了本地数据库等Web应用的功能、H5营销的数据统计方便

相同之处:
1. 针对同一个系统功能的测试,三端所测的业务流程是一样的
2. 一般情况下手机端和PC端都会对应一套后台服务,也有一些功能,比如PC与手机端展示不一致,或者有什么特殊处理,这样情况下后台会写两套不同的接口来处理对应的业务需求。
不同之处:
测试平台(容器)不同
兼容性测试不同
系统架构不一样
发布流程不同
APP还有一些专项测试

问题9 : 探索性测试:局部、全局、混合探索

三种方法:
局部探索式测试:用户输入、软件状态、代码路径、用户数据、运行环境
全局探索式测试:
混合探索式测试:场景操作(先设计场景,对场景进行变化)、漫游测试

探索式有一道大题:写出使用的测试方法、测试思路
快递测试法:测数据在程序的传递情况,收货地址在哪显示、使用
测一送一测试法:页面打开两次,一个操作
遍历测试法:遍历所有弹窗;测试所有提示
破坏测试法:破坏资源,网络、内存

问题10: 敏捷宣言要能理解,瀑布模型与敏捷模型的区别

敏捷宣言理解即可:
个体和互动高于流程和工具
可用的软件高于详尽的文档
客户协作高于合同谈判
响应变化胜过遵循计划

敏捷模型与瀑布模型的区别:
1. 测试不是单独的阶段,与开发同时发生; 测试是一个单独的阶段
2.测试者和开发人员一起工作;测试者和开发人员分开工作
3.测试人员参与了需求。;测试人员可能不会参与到需求阶段
4.验收测试是在每次迭代和客户反馈需求后完成的;验收测试仅在项目结束时完成
5.每次迭代完成自己的测试,从而允许在每次发布新功能或逻辑时实现回归测试。;回归测试只有在完成开发后才能够实现
6.编码和测试之间没有时间延迟;编码和测试之间通常有时间延迟
7.连续测试可以与其他阶段重叠;测试是一个定时活动,测试不可以与其他阶段重叠
8.测试是最佳做法;测试往往被忽视

问题11:Scrum敏捷方法,设计角色、工件,活动

三个角色、三个工件、五个事件、五个价值
3个角色:产品负责人、ScrumMaster、开发团队
3个工件:产品Backlog、SprintBacklog、产品增量
5个事件:
Sprint(Sprint本身是一个事件,包括了如下4个事件)
Sprint计划会议
每日站会
Sprint评审会议
Sprint回顾会议

有选择 或 填空

问题12 : 用户故事的三个要素,用户故事的六个特性

用户故事的三要素:角色、活动、价值

六个特性:独立的、可讨论的、有价值的、可估计的、小的、可测试的

问题13: 用户故事的优先级,看板的作用

用户故事排优先级——MoSCoW法则

简单答出看板的作用,什么时候用?

DevOps一种开发模式,比敏捷模型多了自动化工具,可以用一个公式表示:文化观念的改变+自动化工具 = 不断适应快速变化的市场。

什么是持续化集成、持续化交付,持续化部署?

测试左移、测试右移的活动
左移:评审、技术对齐、自测赋能、多角色协作
右移:灰度、监控、问题归因

问题14:渗透测试主要做什么,流程

区别于安全测试,渗透测试有一定的破坏性

问题15:信息收集的内容

信息收集:域名信息
敏感目录
端口扫描
旁站C段
整站分析

问题16:同源策略概念及意义、浏览器沙箱、恶意网址拦截的机制

什么是同源?限制了来自不同源的“document”或脚本,对当前“document”读取或设置某些属性
两个页面地址中的协议,域名(或IP),子域名,端口号一致,则表示同源

浏览器沙箱?以多进程为基础,将浏览器的各个功能模块分开,各个浏览器实例分开,当一个进程崩溃时,不会影响到其他的的进程

恶意网址拦截的机制?目前各个浏览器的拦截恶意网址的功能都是基于“黑名单”的。
浏览器周期性地从服务器端获取一份最新的恶意网址黑名单,如果用户上网访问的网址存在于此黑名单中,浏览器就会弹出一个警告页面

问题17:XSS攻击的原理,三种类型:反射型、存储型、DOM型、各自的特点、防御措施

跨站脚本攻击
存储型最危险。
三种类型和各自特点

防范措施:1.   2.   3.

问题18:什么是SQL注入,SQL注入的类型,盲注的类型

攻击者通过Web应用程序利用SQL语句或字符串将非法的数据插入到服务器端数据库中,获取数据库的管理用户权限,获取重要信息及机密文件

字符型注入
数字型注入
盲注(时间盲注、布尔盲注)
联合注入

问题19:什么是文件包含漏洞,包含漏洞的两个条件,漏洞的预防

php代码中,包含一个恶意文件

两个条件 :  1.动态方式进入   2. 用户能够控制动态变量

问题20:文件上传检测的内容,防范的方法

产生文件上传漏洞的原因?
文件上传漏洞是指由于程序员在对用户文件上传部分的控制不足或者处理缺陷,而导致的用户可以越过其本身权限向服务器上上传可执行的动态脚本文件

导致文件上传漏洞的原因较多,主要包括以下几类:
服务器配置不当(put可以直接向服务器上传资源,不过默认是关闭的)
本地文件上传限制被绕过
服务端过滤不严格被绕过
文件路径截断
文件解析漏洞导致文件执行

防止上传漏洞两种策略
客户端检测:客户端使用JS检测,在文件未上传时,就对文件进行验证
服务器端检测:检测文件扩展名是否合法,检测文件中是否嵌入恶意代码

防范的方法?

问题25:点击劫持的原理

攻击者使用一个透明的、不可见的iframe,覆盖在一个网页上,然后诱使用户在该网页上进行操作,此时用户将在不知情的情况下点击透明的iframe页面。通过调整iframe的位置,可以诱使用户恰好点击在iframe页面的一些功能

简答题:某个漏洞的原理

问题27:CSRF的原理,攻击方式,防御措施

跨站点请求伪造:,不需要知道用户的cookie

CSRF的原理(那个图记住)

CSRF攻击的两个重点:
CSRF的攻击建立在浏览器与Web服务器的会话中
欺骗用户访问URL

检测CSRF攻击主要分为两种:手工检测和半自动检测。

方法一:验证 HTTP Referer 字段
方法二:二次确认
方法三:Token认证
方法四:Cookie Hashing

问题28:HTML5安全问题,主要讲了5种,是什么原因造成的

CORS攻击
Web Storage攻击
Web Worker攻击
新标签攻击

问题27:session的攻击方式,固定攻击,保持攻击的原理,单点登录的原理

固定攻击(图)
保持攻击:让session一直有效
单点登录的原理,实现机制(文字描述)
单点登录(Single Sign On),简称SSO。在多个应用系统中,只需要登录一次,就可以访问其他所有的应用系统。

问题28:基于角色与基于数据访问控制的区别,OAuth2.0的原理,四种授权方式

基于角色的访问控制
这种基于角色的权限管理(RBAC模型),我们可以称之为“垂直权限管理”。
在配置权限时,应当使用“最小权限原则”,并使用“默认拒绝”的策略,只对有需要的主体单独配置“允许”的策略。
不同角色,权限不同

基于数据的访问控制:"水平权限管理"
同一角色,权限不同,但访问数据有限制

令牌(token)与密码(password)的作用是一样的,都可以进入系统,但是有三点差异。
令牌是短期的,到期会自动失效,用户自己无法修改。密码一般长期有效,用户不修改,就不会发生变化。
令牌可以被数据所有者撤销,会立即失效。
令牌有权限范围(scope)

OAuth2.0规定了四种授权方式。
授权码
隐藏式
密码式
客户端凭证

OAuth2.0 的原理
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-11-26 09:12:22  更:2021-11-26 09:14:39 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 7:52:23-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码