
测试基础知识
文章平均质量分 64
一些常见的基础知识
Test_the_rookie
文章几乎都是学习笔记,仅做日后复习使用。
展开
-
Redis学习笔记
在运行过程中,同时记录 RDB 快照和 AOF 日志,当 AOF 日志过大时,会自动触发 AOF 重写,并将重写后的 AOF 文件作为新的数据恢复源。在事务执行期间,不会主动中断,服务器会在执行完事务中的所有命令之后,才会继续处理其他客户端的命令请求。:Redis主从复制是指将一台Redis服务器(主节点)的数据,复制到一个或多个不同Redis服务器(从节点)。:在事务中,按照需要执行一系列的 Redis 命令,包括数据的修改、删除等操作,这些命令将被缓存到事务队列中,但不会立即执行。原创 2025-01-22 17:35:39 · 945 阅读 · 0 评论 -
mongDB学习笔记
插入多条数据:db.car_info.insertMany([{“number”:“川G123456”,“type”:“小轿车”,“driver_id”:“002”},{“number”:“川G00000”,“type”:“小轿车”,“driver_id”:“003”}]) 需要注意的是,插入多条数据时,被插入内容是存放于一个数组中。插入单条数据:db.car_info.insert({“number”:“川G123456”,“type”:“小轿车”,“driver_id”:“002”})原创 2025-01-16 16:33:28 · 829 阅读 · 0 评论 -
MySQL基础之锁
共享锁:允许多个事务同时读取数据,是数据库管理系统实现并发控制的一种机制,但是数据被读取期间,事务不能对数据进行修改,这种锁通常用于实现事务的可重复读(repeatable read)隔离级别。在这个级别上,事务会对读取的所有行加上锁,无论是共享锁还是排他锁,并且会使用范围锁来保护一系列值不被其他事务修改。锁分为全局锁、表级锁、行级锁。在当前事务创建一个排他锁之后,当前事务仍具有该表的增删改查权限,其它事务将无法对该表进行增删改查操作,必须等待当前事务完成并且锁被释放,其它事务才能对该表进行增删改查。原创 2024-03-19 09:37:52 · 1612 阅读 · 0 评论 -
mysql基础之事务
可以通过模拟正常事务处理、并发事务处理以及异常情况下的事务处理场景,使用数据库管理系统的并发控制管理器来对并发执行的事务进行基本读写操作的顺序控制,以确保在某个隔离级别下,并发执行事务的正确性。【幻读】:同一事务执行多次相同的查询,由于其它事务插入或者删除了满足当前事务查询条件的数据,导致后续的查询结果出现了之前结果中未出现的数据。(查询结果条数不变,但是内容不一致)【读未提交(read uncommitted)】:事务最低级的隔离级别,允许读取尚未提交的数据,可能会导致脏读、幻读、不可重复读。原创 2024-03-14 17:09:48 · 462 阅读 · 0 评论 -
MySql数据库索引相关知识
mysql主要支持两种类型的索引**B+tree(B+tree是一种多路搜索树,每个节点包含关键字以及指向节点的指针)、hash表(hash表索引则是通过哈希函数将键值映射到数组索引上,从而实现查找)**索引。二级索引被称为非聚集索引或辅助索引,二级索引的叶子节点存储的是主键而不是数据。给表的多个字段创建索引,必须遵循“最左前缀匹配”原则(即对应的sql要命中这个索引,对应的查询条件需要与组合索引的字段顺序保持一致,可以不是完全匹配,但是第一个条件需要与第一个索引字段匹配,不然会无法命中索引)。原创 2024-03-13 16:43:38 · 1002 阅读 · 0 评论 -
简述TCP三次握手,四次挥手
客户端在收到服务端发送的SYN/ACK(同步/确认序列编号)标致的数据包后,会发送一个带有ACK(确认序列编号)标志的数据包给服务器,表示客户端接受连接。ACK标志为1,表示确认收到了客户端发送的FIN包,FIN为1,表示不再发送数据,ack为确认号,为客户端发送的FIN包的初始序列号+1。ACK包中seq,表示接收方当前发送数据的最后一个字节的序列号,ACK标志为1,表示确认收到了客户端发送的FIN包,ack表示确认号,具体值为FIN包的初始序列号+1。,表示客户端期望从该序列号发送数据;原创 2023-09-19 17:23:23 · 579 阅读 · 0 评论 -
进程和线程的区别
进程:进程是计算机中运行程序的实例。不同进程之间相互独立,彼此不能直接访问对方的内存。进程之间的通信需要通过操作系统提供的特定机制,如管道、共享内存等。线程:线程是进程中执行的实体。一个进程可以包含多个线程,它们共享进程的内存和系统资源。通信方式:进程之间通信需要操作系统提供特定的机制如共享内存、管道等。执行能力:进行是独立的执行单位,可以独立执行任务。线程是进程中的实体,共享进程的上下文,多个线程可以并发执行。资源开销:每个进程都有独立的内存和系统资源,而线程共享进程的内存和资源。原创 2023-09-01 15:45:34 · 376 阅读 · 0 评论 -
在Linux服务器上简单部署一个Python项目
以上就是在Linux上简单部署一个python项目的方法。原创 2023-06-29 14:01:58 · 6225 阅读 · 0 评论 -
windowns配置git环境
windowns配置git环境。原创 2023-03-19 21:35:01 · 197 阅读 · 0 评论 -
使用Python&mysql完成数据拆分校验
背景:公司迭代了一个需求,会将生产的数据根据指定的维度进行拆分,研发要求测试出一个数据验证脚本,去校验数据拆分的准确性。原数据格式为:注意provider_no、channel_no字段的值,原数据格式为多对多。产品需求为:根据operate_type、msg_type、target_type、provider_no、channel_no五个条件为维度,完成数据的拆分,使其对应字段的值有且只有一个(原本一个配置数据拆分之后,可能会有几十条配置)脚本设计思路1:正向思路:确定开发脚本的拆分方式====原创 2022-12-05 15:51:10 · 676 阅读 · 0 评论 -
Linux常用知识
【代码】Linux常用知识。原创 2022-09-14 22:34:16 · 370 阅读 · 0 评论 -
如何在pycharm中使用git
一、环境配置:1.下载安装git,安装成功后,打开git bash here输入以下命令配置基础信息:git config --global user.name “用户名”git config --global user.name “邮箱地址”输入命令:ssh-keygen -t rsa -C "邮箱地址"生成公共密钥2.进入gitee网站,注册一个账号(gitee是国内做的git的托管服务,因为政策原因,在国内不翻墙的情况下,直接访问git很慢。),账号注册成功之后,需要给gitee配置步骤1生原创 2022-05-25 23:23:07 · 5272 阅读 · 0 评论 -
浅谈Python的赋值、深、浅拷贝
一、什么是赋值?在Python中,赋值需要使用运算符“=”,赋值并不会生成一个新的对象。赋值操作是引用了原变量值的地址。当原变量的值发生更改时,赋值变量的值也会同步更改。举个例子:a=5的含义是Python解释器在内存中开辟了一个地址来存储“5”这个值,而a=5实际是变量a在引用该值的地址。这里跟指针很像;b=a,实际上是变量b引用了“5”的地址。a、b变量均指向了同一个地址。附件所示就是赋值变量与原变量指向的地址均一致。补充:使用新变量将对应的值更改后,老变量的值也会随之更改(赋值操作是引用了原创 2022-05-09 23:38:01 · 1989 阅读 · 0 评论 -
Json与dict的区别
一、语言不同:json:是JavaScript的一种数据格式,是字符串dict:是Python的一种数据格式二、语法规则不同:json:1.json键值对使用的引号只能是双引号;2.json的key是有序的、可重复的;3.json的key只能是字符串;4. json的key存在默认值,undefined5. json中的布尔值写法为 true、false6. json中的空值为空时,写法为:null (这里不是指:{“key1”:" “}这样的情况)7. json的value不能直接原创 2022-04-23 23:08:55 · 3598 阅读 · 0 评论 -
简述Web测试和App测试的区别
随着移动互联网的极速发展,移动应用更是呈指数增长,在app测试方面更是需求大涨,已经完全超过以往web测试,今天就简单说说两者的区别,希望对测试攻城狮们有帮助。相同点不管是传统行业的web测试,还是新兴的手机app测试,都离不开测试的基础知识,即是不管怎么变,测试的原理依然会融入在这两者当中。1.设计测试用例时,依然都是依据边界值分析法、等价类划分等;2.多数采用黑盒的测试方法,来验证业务功能是否得到正确的应用;3.需要检查界面的布局、风格和按钮等是否简洁美观、是否统一等;4.测试页面载入和翻页转载 2021-12-21 22:52:18 · 416 阅读 · 0 评论 -
Postman与Jmeter的区别
一、开发语言区别:Postman是基于js语言编写的接口测试工具。Jmeter是基于Java语言编写的纯UI接口+性能测试工具。二、使用范围区别:Postman仅能做接口测试,Jmeter除了接口测试外,还能做性能测试。三、使用区别:Postman在录入接口信息时,URL是一个整体,而Jmeter拆分成了四个部分(协议名称、IP地址、路径、端口号)Postman可以直接在请求中添加请求的头部信息,Jmeter需要添加信息头管理器(Http信息头管理器)Postman虽然也原创 2021-12-21 22:40:10 · 11578 阅读 · 0 评论 -
接口常见的状态码
(加粗的为常见的状态码)1.表示临时响应并需要请求者继续执行操作:100 (继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。101 (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。2.表示成功处理了请求的状态代码:200 (请求成功),服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页。201 (已创建) 请求成功并且服务器创建了新的资源。202 (已接受) 服务器已接受请求,但尚未处理。203 (非授权信息) 服转载 2021-11-10 23:14:43 · 2216 阅读 · 0 评论 -
接口请求方式get、post的区别简述
一、安全层面:1.get请求没有post请求安全,因为get请求的参数是放在URL中的。post请求的参数是放在body中的。2.get请求能够被缓存,而post请求不能够被缓存。3.get请求是明文传输,post请求是密文传输。二、数据传输层面:1.get请求能够传输的数据会远小于post,因为get请求会受限于URl的长度(游览器的限制)2.get请求的数据类型只允许ASCII 字符,post请求无限制。三、数据请求过程层面:1.get请求在与服务器建立连接时,就会将请求参数一同发送至服原创 2021-11-10 22:55:27 · 10097 阅读 · 2 评论 -
python基础之字符串
result = str.split(“,”,1) ====>>>>打印结果为:[‘abcqw’, ‘23,123ddd’]使用spilt函数对字符串进行切片,str.split(‘参数1’,参数2),其中参数1填入分隔符,参数2填入想要分割的次数(参数2不填写时,默认为-1,分割所有)result=“姓名:{name},年龄:{old}”.format(name=“tom”,old=“18”) ====>>>>打印结果为:姓名:tom,年龄:18。【ljust】:字符串左对齐(往左补位),有两个参数;原创 2021-11-09 13:17:54 · 985 阅读 · 0 评论