
提升
搬砖的魅力
每天逼着自己写点东西,终有一天会为自己的变化感动的。这是一个潜移默化的过程,每天坚持编编故事,自己不知不觉就会拥有故事人物的特质的。 Explicit is better than implicit.(清楚优于含糊)
展开
-
HTTP状态码
HTTP状态码当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求。当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应浏览器的请求。HTTP状态码的英文为HTTP Status Code。下面是常见的HTTP状态码:200 - 请求成功 301 - 资源(网页等)被永久转移到其它URL 404 - 请求的资源(网页等)不存在 500 - 内部服务器错误HTTP状态码分类HTTP状态码由三个十进制数字组原创 2020-12-01 16:43:06 · 250 阅读 · 0 评论 -
Android测试电量与优化
电量消耗的计算与统计是一件麻烦而且矛盾的事情,记录电量消耗本身也是一个费电量的事情。唯一可行的方案是使用第三方监测电量的设备,这样才能够获取到真实的电量消耗。工具:Battery HistorianBattery Historian是一款由Google提供的Android系统电量分析工具,使用Battery Historian需要搭建GO开发环境。需要更加直观的观察电量数据,还需要搭建Python开发环境。通过Battery Historian获取了手机电量总情况后,研究手机电量使用情况,并找出原创 2020-11-30 17:15:34 · 292 阅读 · 0 评论 -
Mysql精华总结,解决测试人员面试中碰到的一切Mysql问题(二)
问题1:count(*) 和 count(1)和count(列名)区别答:执行效果上count(*)包括了所有的列,相当于行数,在统计结果的时候,不会忽略列值为NULLcount(1)包括了所有列,用1代表代码行,在统计结果的时候,不会忽略列值为NULLcount(列名)只包括列名那一列,在统计结果的时候,会忽略列值为空(这里的空不是只空字符串或者0,而是表示null)的计数,即某个字段值为NULL时,不统计。执行效率上列名为主键,count(列名)会比count(1)快列名原创 2020-11-28 16:24:05 · 275 阅读 · 0 评论 -
Mysql精华总结,解决测试人员面试中的碰到的一切Mysql问题(一)
一、MySQL架构相关问题1:画出 MySQL 架构图答:和其它数据库相比,MySQL有点与众不同,它的架构可以在多种不同场景中应用并发挥良好作用。主要体现在存储引擎的架构上,插件式的存储引擎架构将查询处理和其它的系统任务以及数据的存储提取相分离。这种架构可以根据业务的需求和实际需要选择合适的存储引擎。连接层:最上层是一些客户端和连接服务。主要完成一些类似于连接处理、授权认证、及相关的安全方案。在该层上引入了线程池的概念,为通过认证安全接入的客户端提供线程。同样在该层上可以实..原创 2020-11-20 14:57:57 · 363 阅读 · 1 评论 -
网络知识
OSI分层:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层TCP/IP模型:应用层、传输层、网络层、网络接口层应用层协议(常用):HTTP、RTSP、FTP传输层协议:TCP、UDPip协议是网络层协议TCP是传输层的协议TCP/IP是由网络层的IP协议和传输层的TCP协议组成的传输层包括TCP和UDP协议TCP和UDP的区别?TCP是面向连接、更可靠、安全性级别也更高UDP是无连接、不可靠、信息量更少网页报错码:400(错误请求)-服务器不.原创 2020-11-05 17:33:25 · 169 阅读 · 0 评论 -
想拿高薪,你怎么能不会这个技能点
最近几年,微服务架构越来越火爆,逐渐被企业所采用。随着软件架构的变化,对应的软件测试策略需要作何调整呢?在这里我来先介绍一下微服务的相关概念以及微服务的主流框架SpringCloud,让大家对微服务有一个整体的认识,然后我在对如何进行微服务测试进行概要讲解。相信大家认真阅读本文后,对服微务一定会有从0到1的突破!拿高薪也轻松解决微服务概念微服务英文名称Microservice,微服务架构模式就是将整个Web应用组织为一系列小的Web服务。这些小的Web服务可以独立地编译及部署,并通过各自暴露的.原创 2020-10-28 19:44:51 · 281 阅读 · 0 评论 -
Java String类必须了解的3个核心知识点
我们这知道,java中new 一个类的实例是在JVM的堆中完成的,如下图所示:在这里我们以String类为例讲解一些更为细节的东西!String生成实例的代码如下:Stringstr=newString("hello");对于通过new产生一个字符串(假设为”hello”)时,会先去上图的常量池中查找是否已经有了”hello”对象,如果没有则在常量池中创建一个此字符串对象,然后堆中再创建一个常量池中此”china”对象的拷贝对象。==和equlas()我们看以下...原创 2020-10-23 11:43:55 · 220 阅读 · 0 评论 -
成为高薪测试你必须知道的设计模式四
自动化测试中,一些功能是公共功能,很多模块都会用到,只是在不同的模块中方法会一些差异而已。比如我们需要对请假流程、报销流程进行自动化。经过分析,我们发现:请假:用户需要先登录、然后请假(提交)、相关人员登录系统开始审批;报销:用户需要先登录,然后创建报销申请单(提交)、相关人员登录系统开始审批;经过分析,登录是公共功能,请假单、报销单部分则需要单独处理,相关人员审批这块有共性的地方,也有各自的特性(报销系统需要上传附件这种)。设计的时候,审批功能就可以采用模板模式进行设计和代码编..原创 2020-10-20 16:22:29 · 206 阅读 · 0 评论 -
成为高薪测试你必须知道的设计模式III
自动化测试中,我们会遇到需要写大量的判断逻辑的场景,实现角度要么用if、else实现,要么用swtich语句实现。从功能角度来看,的确是实现了,但后面项目需要维护了,需要新增一个功能时,发现需要对判断逻辑进行改写,很容易改出问题来。为解决这种情况,我们需要引入策略模式。下面以UI自动化中,支持浏览器适配功能为例,介绍策略模式的用法,话不多说,直接上代码。1、策略模式代码实现先看一个没有使用策略模式的代码写法:packagejava策略模式5;publicclassopen...原创 2020-10-17 15:08:13 · 210 阅读 · 0 评论 -
成为高薪测试,你需要知道的设计模式II
前文介绍过简单工厂模式。出于帮助大家回顾知识和更好理解工厂方法模式的目的,我们先看看下面简单工厂模式的代码。1、简单工厂模式1.1、定义接口类publicinterfacesystemFunction {voidregisterForPhone();voidregisterForUserName();voidloginForPhone();voidloginForUserName();}1.2、实现具体类public class sina implem...原创 2020-10-13 20:50:00 · 171 阅读 · 0 评论 -
想脱离功能测试,你必会的27个技能知识点
前面我给大家总结了上手python的21个知识点,在这里我又总结了功能测试小白想摆脱测试点点点入门java编码必备的27个知识点,大家可以按照这个知识点进行深入学习重要的是大家在了解知识点以后,要亲自上手编码,出现问题,调试问题,解决问题,如此往复才能使自己的编码能力得到本质的提升!对于测试人员来讲,工作中缺少编码环境,那么我们可以通过编写UI自动化脚本(selenium jar包),或者接口自动化脚本(httpclient jar包)来提升自己的代码能力!刚开始写一些基础的测试脚本,然..原创 2020-10-14 11:02:06 · 352 阅读 · 0 评论 -
成为高薪测试,你需要知道的设计模式I
说到设计模式,很多人的想法都是这是开发玩的东西。是的,设计模式能指导开发如何将代码写得更好。作为测试,我们就不需要了吗?并不是,很多人说自己做了多少年的自动化测试,做了多少年的测试开发,写了多少框架、工具。但不管是面试聊到设计模式,还是看他写的框架、工具的代码,你都会发现,他只是实现了功能,这个代码写得很长,代码的内建质量很低。要修改、要调整一个功能,简直会要了老命。为啥会要了老命呢?就是代码在编写的过程中,设计做的不好,让人看不懂、难理解、难维护、难扩展。试想,面试的时候,大家能动面试说清楚你原创 2020-10-13 17:25:13 · 273 阅读 · 0 评论 -
测试人员应该知道的Redis知识(十一) Redis持久化之RDB
一、概述Redis优于Memcached的重要一点就是Redis的数据可以进行持久化,在发生一些特殊情况后,可以用备份的数据进行还原。Redis 提供了不同级别的持久化方式: RDB持久化方式能够在指定的时间间隔能对你的数据进行快照存储。 AOF持久化方式记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始的数据,AOF命令以redis协议追加保存每次写的操作到文件末尾.Redis还能对AOF文件进行后台重写,使得AOF文件的体积不至于过大。 .原创 2020-10-13 15:31:07 · 253 阅读 · 0 评论 -
测试人员应该知道的Redis知识(十) Redis配置(下)
一、概述平时我们工作中除了基本的Redis命令外,我们对于Redis的一些基础配置也是需要有一定了解的,上期中给大家介绍了Units、Includes、Network等方面的相关的内容,今天会带大家针对Redis的配置文件剩余部分进行了解。Reids配置文件是位于安装目录下的redis.conf,如果没有找到的话,可以从源码文件夹中copy,一般我们不会对原始文件进行修改,而是copy一份。cp redis.conf myredis.conf让Redis以制定配置文件启动的话,..原创 2020-10-10 14:38:33 · 278 阅读 · 0 评论 -
测试人员应该知道的Redis知识(九) Redis配置(上)
一、概述平时我们工作中除了基本的Redis命令外,我们对于Redis的一些基础配置也是需要有一定了解的,今天会带大家针对Redis的配置文件进行了解。Reids配置文件是位于安装目录下的redis.conf,如果没有找到的话,可以从源码文件夹中copy,一般我们不会对原始文件进行修改,而是copy一份。cp redis.conf myredis.conf让Redis以制定配置文件启动的话,我们可以执行以下语句./redis-server /path/to/redis.conf.原创 2020-09-30 10:56:21 · 440 阅读 · 1 评论 -
测试人员应该知道的Redis知识(八) sorted set
一、概述Redis sorted set和set一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。有序集合的成员是唯一的,但分数(score)却可以重复。集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。集合中最大的成员数为 2^32 - 1 (4294967295, 每个集合可存储40多亿个成员)。sorted set虽然不像string和hash在工..原创 2020-09-28 16:16:38 · 423 阅读 · 0 评论 -
测试人员应该知道的Redis知识(七) Hash
一、概述Redis hash 是一个 string 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象。Redis 中每个 hash 可以存储 2^32 - 1 键值对(4294967295, 每个Hash可存储40多亿个键值对)。Hash是我们工作中使用非常频繁的类型,今天我们一起来看一下针对Hash类型,我们工作中常用的一些命令。二、hset/hget/hmset/hmget/hgetall/hdelhset : 将...原创 2020-09-16 19:32:27 · 380 阅读 · 0 评论 -
测试人员应该知道的Redis知识(六) Set
一、概述Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)集合中最大的成员数为 2^32 - 1 (4294967295, 每个集合可存储40多亿个成员)。Set类型是我们工作中经常会用的一种数据类型,我们经常用来进行去重等操作,今天我们一起来看一下针对Set类型,我们工作中常用的一些命令。二、sadd/smemb...原创 2020-09-08 10:43:05 · 802 阅读 · 0 评论 -
测试人员应该知道的Redis知识(一) 概述
一、概述最近在面试的时候会问面试者一些关于缓存的问题,发现大部分同学都知道自己的项目中有运用到redis或是memorycache这类产品,但再往细了问的话,会发现很大一部分同学仅仅是知道,对于如何使用、使用中的细节以及缓存对于测试的影响这类问题,大部分同学都不是很清楚。下面我们会以redis为例,带大家来逐步了解相关的知识。二、Redis是什么?引用官网的说法:Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型...原创 2020-07-31 19:50:21 · 1103 阅读 · 0 评论 -
测试人员应该知道的Redis知识(五) List
Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)一个列表最多可以包含 2^32 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。List类型也是我们工作中经常会用的一种数据类型,今天我们一起来看一下针对List类型,我们工作中常用的一些命令。二、lpush/rpush/lrangelpush : 将一个或多个值插入到列表头部。rpush : 在列表尾部添加一个或多个值。lran...原创 2020-09-05 17:43:32 · 405 阅读 · 0 评论 -
测试人员应该知道的Redis知识(四) String
一、概述完整的说,应该是Binary-safe string,二进制安全字符串。从官网内容我们可以看到,String类型是最简单的一种数据类型,和Memcached的类型一致,一个key对应一个value。String类型是Redis最基本的数据类型,一个Redis中字符串value最多可以存512M,但是我们不应该把内存当磁盘来用。今天我们一起来看一下针对String类型,我们工作中常用的一些命令。二、set/get/del/append/strlenset : 设置指..原创 2020-08-28 16:09:55 · 324 阅读 · 0 评论 -
测试人员应该知道的Redis知识(三) 五大数据类型
一、概述从官网内容我们可以看到,Redis不仅仅是key-value键值存储结构,而是一个数据结构存储服务器,支持多种类型的values。事实上,支持多种数据类型也是Redis相对于Memcached一大优势。在面试的时候,Redis常用的数据类型,也是经常会问的面试题,但在实际面试的时候,大多数面试者都不知道,或者只知道基础的String类型,而对其他的数据类型知之甚少。今天会给大家介绍一下Redis中常用的五大数据类型,包括String、List、Set、Hash、Zset。..原创 2020-08-06 10:28:33 · 368 阅读 · 0 评论 -
测试人员应该知道的Redis知识(二) 杂项基础知识
一、概述上次的文章中给大家介绍了一下Redis的安装及helloworld,今天会给大家介绍一下Redis的一些杂项知识。二、SELECT首先我们需要了解的是单个Redis实例中默认是16个数据库,和数组类似,下标是从0开始的,当我们连上Redis后,默认使用的是0号库,我们可以使用SELECT命令切换数据库。我们可以看到在切换数据库后,在命令行中会显示当前的数据库的编号,默认从0-15,在数据库0的时候,默认不显示下标,而当我们输入超过15的下表时,会报(error) ERR ..原创 2020-08-04 15:15:27 · 544 阅读 · 0 评论 -
从0到1学会使用SpringBoot 搭建mock Server
做过接口测试的同学一定听说过mock Server,大家会觉得其很神秘,很高大上!mock Server出现的原因是现今的业务系统很少有孤立存在的,它们或多或少需要使用兄弟团队或是其他公司提供的服务,这给我们的联调和测试造成了麻烦。于是就有了解决方案——搭建一个临时的server,模拟那些服务,提供数据进行联调和测试。下图很好的解释了什么是Mock server:在这里我用springboot带大家亲手搭建一个mock server,让大家在团队中技术突显,鹤立鸡群!...原创 2020-07-31 19:54:02 · 1123 阅读 · 1 评论 -
十大软件测试问题,这里都解答了!
1、测试负责人需要进行测试进度跟踪吗很多时候,由于人力资源的不足,测试项目负责人都是在执行测试,这样就使整个项目缺乏控制,一些问题(例如:有些成员的缺陷质量不够合格;开发人员修改不及时,系统某些功能发生严重问题导致部分功能无法测试。)得不到解决,耽误了进度。所以测试负责任必须全程监控项目,尽可能多的掌握信息。通常,测试负责人需要完成下面这些内容的管理工作:测试用例执行情况;每个测试员提...原创 2019-11-06 11:37:25 · 785 阅读 · 0 评论 -
测试人员如何快速成长?
合理规划目标和知识体系 有了明确的目标和知识体系,可以让自己的时间和精力更聚焦,同时可以让自己在短期或者长期职场工作中获得更多的收入。这里首先会有一个问题,如何规划自己的目标和知识体系。新入职场,我可能都不了解行业情况、测试成长体系、测试岗位区分以及技能要求,搞性能测试还是自动化测试,还是安全测试等,这些岗位哪些钱多、技能要求是啥。甚至短期内不清楚工作内容需要用到哪些的核心知识,专注哪块的工...原创 2019-10-28 11:39:50 · 463 阅读 · 0 评论