测试理论总结(一)

article/2025/9/23 11:14:05

1.你是如何把控、推进测试流程的?

首先,测试之前,我会做好测试计划、测试人力分配、工作量的估算、测试策略、测试风险评估等;其次,测试中,我会尽量严格按照测试计划来执行,如果实际测试中出现问题,也会随机应变的进行处理,不会耽误测试进度;最后,测试工作完成之后,我会组织本组人员进行项目复盘总结,针对测试过程中出现的问题进行分析,以便后续工作避免再次发生。

2.讲一讲你了解的测试基本理论?

1)测试需求分析:测试工作之前,我们会拿到一个产品需求文档,针对这个文档,我们会和产品经理、交互、视觉、相关开发和测试人员进行一次需求文档澄清,如果产品比较复杂,可能也会分布进行多次澄清,澄清过程其实是一个大家思维碰撞的一个过程,各个角色都会提出各自的观点和看法,当然也会有一下会议的遗留事项,这就需要上级领导确认后再通知到大家,总之,需求澄清是让大家了解接下来需要做什么样的产品,以便制定计划和方案。

2)测试流程建立:测试流程其实是在测试之前做好测试计划,并在测试中严格按照测试计划执行,需要确定的有:测试目标、测试范围、测试环境、测试工具、测试策略、测试风险等,还有人力资源分配、工作量的估算、测试时间、任务分配、培训计划等。

3)测试方案编写:测试方案是根据产品文档、交互图、视觉图进行编写的Xmind格式的文件,也有一些word形式的,一般是在开发写代码的过程中进行编写,开发提 测之前,与产品经理、交互、视觉、开发拉会进行测试方案的评审,评审通过后,开发进行提 测评审,与开发沟通好是否有遗留事项。

4)测试用例设计:测试用例设计一般是在测试方案编写完成之后,根据测试方案进行每个场景的用例设计,用例设计的方法有很多,常用的有:等价类、边界值、判定表、正交试验、流程分析、特殊场景的异常分析、错误猜测等。测试用例比较重要的几个字段:用例名称、前提条件、测试步骤、预期结果、备注、优先级等。

3.你接口测试是怎么做的?

首先,要找开发要接口文档,如果没有接口文档,就要了解被测试的业务,理解设计层面的业务,不仅仅局限于需求层面的业务,就是你要知道传什么参数,返回什么样的状态码,然后设计一部分接口文档,与开发沟通一致。

一个接口文档中应该包括以下内容:接口名称简要描述、请求的url、请求方式(get/post)、请求的参数(名称,类型,选填/必填,含义,取值范围,缺省值)、请求示例、返回示例、返回参数说明、其它返回错误代码说明等。

接口测试计划需要考虑人力分配和在哪个阶段进行接口测试,有什么风险以及如何应对。

接口测试方案需要考虑测试的重点、次重点的划分,以及如何测试,测试难点以及如何解决,接口测试环境部署,以及使用什么工具进行接口测试,我主要使用postman、Jmeter,python下的requests插件,

针对http协议进行接口测试,需要考虑:

1)从设计层面的业务考虑,传入不同的参数,会得到不同的结果

2)从协议出发考虑,比如:请求中给出错误的cookie中的sessionID,更换User-Agent,更换Content-Type,响应中header的状态码等

3)从接口所依赖的第三方考虑,也就是外部依赖,这个问题是接口测试中的难点,比如,接口中的某个值是从数据库中获取的,要考虑的是测试数据超出数据库的范围,或者还要考虑数据库服务器的故障情况(可恢复性测试)

4)还要考虑系统测试中做不到的测试用例,比如,表单提交时,系统测试只能给出一个空的参数,没办法做到不给参数,接口测试中可以做到

4.用postman怎么做的接口测试?

postman介绍:

postman可以模拟各种http请求,有Collection测试集合功能,是requests的集合,一个Collection可以包含多个request,如果把一个request看做一个testcase,那么Collection可以看作一个testsuite,Collection还可以import出来分享给团队成员。

人性化的response整理,一般在用其他工具测试时,response的内容通常都是纯文字的raw,但如果是JSON,就是一整行的JSON,这会造成阅读障碍,postman可以针对response内容的格式自动美化,JSON、XML或者HTML都会整理成可以阅读的格式。

内置测试脚本语言,postman支持编写测试脚本,可以快速检测request的结果,并返回测试结果。

设定变量与环境,postman可以自由设定变量与环境,一般我们在编辑request,校验response的时候,总需要重复输入某些字符,比如url,我们可以设定变量来保存这些值,把变量保存在不同的环境中。

在实现接口自动化测试时,经常会遇到接口参数依赖的问题,比如,调取某些接口的时候,需要先获取接口的sign值,而每次请求返回的sign值又是不一样的,这种情况下,就要用到postman中设置环境变量功能,可以在Pre-request Script中将接口返回的response设置为环境变量,供后续接口使用,类似参数化,使用方法为{{}}加上生成的变量获取环境变量。

示例:postman发送合法登录请求的步骤如下

1)新建Collection

2)新建request

3)参照接口文档,输入url

4)选择该接口的方法

5)post请求的正文参数

6)确定请求的Content-Type

7)按照接口文档输入参数,KEY和VALUE前后不能有空格

8)保存

9)Send发送请求

10)观察响应的正文

 11)断言写在Tests中,使用postman代码片段进行断言,比如status code,response body,response time,也可以自己写断言,actual、excepted

5.讲一下OSI七层参考网络协议模型

七层:从下往上,物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。

互联网四层模型:从下往上,物理链路层、网络层(ip协议)、传输层(TCP,UDP协议)、应用层(HTTP协议)。

6.讲一下你了解的TCP协议

TCP协议是可靠的传输协议,它是传输层协议,是全双工通信方式。

TCP传输数据是按照顺序传输的,每一个数据包都有序列号,若是接收方发现某个数据没有收到,可以告知发送发重新发哪个包即可。

在传输数据之前,要建立TCP连接,两个方向上都要建立连接,也就是3次握手,第一次握手:客户端发送SYN报文,第二次握手服务端发送SYN和ACK报文,第三次握手客户端发送ACK报文

每次TCP传输完数据之后,要从两个方向上断开连接,也就是四次挥手,断开连接释放资源

 

 7.HTTP协议的特征

1)灵活

2)明文传输,头部信息和数据正文都是明文传输

3)无连接,当服务器响应了一个客户端的http请求之后,服务器就会断开与客户端的连接

4)无状态,断开连接之后,服务器不会主动记录与客户端交流的数据。为解决无连接问题,客户端保留cookie文件,cookie中有sessionID,服务端也保存sessionID,且sessionID与ip地址绑定,提高安全性。

8.关系型数据库和非关系型数据库的区别?

关系型数据库的数据结构是表。

优点:

1)易于维护:都是表结构,格式一致

2)使用方便:SQL语言通用,可用于复杂查询

3)复杂操作:可用于一个表以及多个表之间非常复杂的查询

缺点:

1)读写性能差,尤其是大量数据个高效率读写

2)固定表结构,灵活度较差

3)高并发读写需求,硬盘I/O是一个较大的瓶颈

非关系型数据库是一种数据结构存储方法的集合,可以是文档或者键值对,图形。

优点:

1)格式灵活:存储格式可以是key-value形式、文档形式、图形形式等,使用灵活,应用场景广泛

2)速度快:可以使用硬盘或者随机存储器作为载体,而关系型数据库只能使用硬盘

3)数据结构相对复杂,复杂查询方面较差        


http://chatgpt.dhexx.cn/article/JnTcDXrJ.shtml

相关文章

超详细的测试理论基础知识

测试理论基础知识 文章目录 一、软件的定义与分类1、软件定义2、软件分类(1)按照功能划分(2)按照技术架构划分 二、软件测试的定义及目的1、定义:2、目的 三、软件测试流程四、V模型(重点)1、软…

测试基本理论-看这篇就够了

软件测试(Software Testing):在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。 一、软件的分类? 1、按照功能划分: 【系统软件】:如操作…

测试理论基础(重点)

软件测试的原则 1. 只能证明软件存在问题,不能把证明不存在问题 2. 不能进行穷尽测试,应该分类别测试 3. 测试工作尽早介入,降低修复成本 4. 缺陷存在集群现象,二八原则:20%的模块中存在80%的缺陷 5. 测试依赖环境 6.…

sql左连接出现重复数据

情况说明:只需左表数据,右表数据只作为条件存在,左表数据与右边有1:n关系,左连接出现重复数据 原因分析:由于1:n关系,右边数据连接后处于隐藏状态(类似)&…

sql 左连接数据出现重复

数据出现数据重复问题,排查后发现竟然是,这里用简单demo举例,项目SQL不便展出~ 目录 一、简化举例 二、查询结果 一、简化举例 1、表aa 2、表bb 二、查询结果 1、无条件查询 2、左连接查询 右表数据有重复时,连接关系如下 111122 …

sql 左连接行数增加本质

sql 左,右,内连接 转载自:http://323229113.blog.163.com/blog/static/2185362820070172553209/ 感谢作者. 相信做数据分析的朋友,对数据库都比较敏感,作为一名数据分析人员,我们处理数据时总会遇见各种各样的问题,包括连接方式的选择,今天和大家分享一下…

SQL(左连接,右连接,内连接)

连接(Join):SQL语句采用JOIN的目的是关联两张及两张以上的表。 连接的使用方式:表1 Join 表2 On 关联条件 1 左连接(Left Join) 左连接(Left Join):多表拼接时,以左边的表为基准&a…

SQL语句理解左右连接和where

这里以左连接 left join 为例,说明 on 后面的条件与 where 后面条件的区别 创建测试表:TAB_1、TAB_2 create table TAB_1 as (select c as A,d as B,3 as C,4 as D from dualunion allselect a as A,b as B,1 as C,2 as D from dual); create table TA…

sql的内连接、左连接、右连接

多表联查时,有些数据没有对应另一个表的数据,即对应为空。 內连接:仅选出两张表中互相匹配的记录,有对应为空的则筛选出去,这些数据就不会被搜索出来。内连接是两个表中都必须有连接字段的对应值的记录,数…

SQL Server左连接

LEFT JOIN 子句用于查询来自多个表的数据。它返回左表中的所有行和右表中的匹配行。 如果在右表中找不到匹配的行,则使用 NULL 代替显示。 以下图说明了两个结果集的左连接结果: 以下说明如何使用 LEFT JOIN 子句来连接两个表 T1 和 T2 : 在…

SQLserver 外连接查询-左连接查询

外连接包括 : (左外连接 右外连接 全连接 简称 为:左连接 右) 先上定义: /*左连接 left join on 返回左表的所有行,对应右表中数据有一对多的联系,则全部展示,右表中没有匹配 上 &am…

SQL左连接数据变少

前一段时间,同学写sql碰到一个问题:两段sql连接看似一样,但是条数却不一样。原因是在左连接之后的where条件对数据进行了筛选,使得数据变少了。两段sql如下: select count(1)from (select *from KXAPP.I_CASH_LOAN_WH…

SQL 左连接中on后面加where和加and的区别

阅读目录 1、首先来谈谈什么是left join 2、再来谈谈on后面使用and和where的区别 3、总结 今天的最佳表现应该作为明天的最低要求 1、首先来谈谈什么是left join left join即左连接,比如表1左连接表2,以左表为主,表示以表1为主&#xff0c…

SQL 内连接、左连接、右连接案例

概念 左连接(Left Join):以左表为主表,左表中每条数据都会跟右表所有数据进行对比一次,当所有条件不满足时,对应的右表数据以 null 显示 1 语法:select * from tbl1 Left Join tbl2 on tbl1.ID…

SQL左连接中的on and和on where的区别

转载,原文链接:http://blog.csdn.net/xingzhemoluo/article/details/39677891 SQL左右连接中的on and和on where的区别 在使用left join时,on and和on where条件的区别如下: 1、on条件是在生成临时表时使用的条件,它不管on中的条…

左连接 oracle条件查询,sql 左连接查询条件and与where

用一条SQL查询一张表中不同级别的字段(字段名称相同)。 需求:用一条SQL同时查出城市id、城市name、省份id和省份name。 版本一如下 SELECT tlUp.LOCATION_ID as cityId, tlUp.LOCATION_NAME as cityName, tlDown.LOCATION_ID as provinceId, tlDown.LOCATION_NAME as province…

oracle左连接优化,关于SQL左连接效率问题

项目在开发新功能,涉及到一张表,里面数据有一百多W的条,表字段竟然有一百多个。。实在是没法再往下新增加字段了,于是就新增了一张表,用做扩展吧,通过表key来关联。后来涉及到以扩展表中某个字段作为查询条…

oracle 左连接 简写,SQL左连接

原标题:SQL左连接 今天分享一下开发中何时运用左连接进行关联查询(大牛请忽视~)。 废话不多说,直接上表结构。只有两张表作为例子,Person表为人员信息,Types为人员类型辅助表,没有定义外键关联。 记住这句话——运用左…

SQL中的左连接和右连接

SQL中的左连接和右连接 SQL中的左连接和右连接 为什么面试官喜欢问这个问题?为什么自己明明会SQL但是这个问题却模棱两可?今天为大家解决这个问题。话不多说,直接上案例~ 创建两张表 首先创建第一张表class,字段如下图所示。 …

SQL查询左连接、右连接、内连接

1、左连接的定义:是以左表为基础,根据ON后给出的两表的条件将两表连接起来。结果会将左表所有的查询信息列出,而右表只列出ON后条件与左表满足的部分。左连接全称为左外连接,是外连接的一种。 下边以A表和B表为例子,A…