
测试
文章平均质量分 75
搬砖的魅力
每天逼着自己写点东西,终有一天会为自己的变化感动的。这是一个潜移默化的过程,每天坚持编编故事,自己不知不觉就会拥有故事人物的特质的。 Explicit is better than implicit.(清楚优于含糊)
展开
-
10年测试专家深度解读接口测试
01、对于接口测试来说 项目测试用例的重复运行首先是表现在单个测试用例的独立性方面的,也就是说,每一个测试用例的运行除了依赖被测对象和对应的数据库环境外,是不依赖于其他任何测试用例的,并且这个测试用例执行完毕后,对系统来说,也是没有任何痕迹的,这样就保证了每个测试用例运行时,都在一个干净的环境中运行。 要实现测试用例的独立性,就必须对被测系统的设计有详细的了解,这样,不会出现测试用例执行后遗漏数据,环境未改变,另外,还需要对测试用例进行详细的设计。 另外,要保证测试...原创 2021-05-18 14:29:05 · 515 阅读 · 2 评论 -
开源测试工具 Network Emulator for Windows Toolkit 使用方法
下载地址:https://pan.baidu.com/s/1dFurINZ 使用步骤: 建立一个虚拟信道 建议一个虚拟过滤器; 建立一个虚拟链路; 选择一种网络模式; GPRS:移动 2.5G 网络; ADSL:宽带; CDMA2000:移动 3G 网络; CDMA:3G; Dialup:远程连接方式,即 wifi; 编辑过滤器: doc 环境下 ping 需要监控的域名 编辑过滤器: .原创 2021-03-18 17:54:39 · 823 阅读 · 0 评论 -
30种SQL语句优化
1.’对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。3.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select i原创 2021-02-23 18:13:25 · 302 阅读 · 0 评论 -
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问题(一)
一、MySQL架构相关问题1:画出 MySQL 架构图答:和其它数据库相比,MySQL有点与众不同,它的架构可以在多种不同场景中应用并发挥良好作用。主要体现在存储引擎的架构上,插件式的存储引擎架构将查询处理和其它的系统任务以及数据的存储提取相分离。这种架构可以根据业务的需求和实际需要选择合适的存储引擎。连接层:最上层是一些客户端和连接服务。主要完成一些类似于连接处理、授权认证、及相关的安全方案。在该层上引入了线程池的概念,为通过认证安全接入的客户端提供线程。同样在该层上可以实..原创 2020-11-20 14:57:57 · 363 阅读 · 1 评论 -
SQL优化系列(三) EXPLAIN详解3
一、概述在日常工作中,我们要看系统中有哪些慢SQL,会开启慢查询去记录一些执行时间比较久的SQL语句,但是这还没完,找到这些慢SQL后,我们要对这些SQL进行分析,比较常用的方法就是使用EXPLAIN去查看这些SQL语句的执行计划,查看该SQL语句有没有使用上了索引,有没有做全表扫描等。前两期给大家介绍了EXPLAIN中id、select_type、table这几个字段的内容,今天我们就带大家一起来学习后面的内容。二、type 对表访问方式,表示MySQL在表中找到所需行的方式,又称“...原创 2020-11-19 18:21:55 · 228 阅读 · 0 评论 -
SQL优化系列(二) EXPLAIN详解2
一、概述在日常工作中,我们要看系统中有哪些慢SQL,会开启慢查询去记录一些执行时间比较久的SQL语句,但是这还没完,找到这些慢SQL后,我们要对这些SQL进行分析,比较常用的方法就是使用EXPLAIN去查看这些SQL语句的执行计划,查看该SQL语句有没有使用上了索引,有没有做全表扫描等。上一期给大家介绍了EXPLAIN中id字段的含义,今天我们就带大家一起来学习后面的内容。二、select_typeselect_type表示查询中每个select子句的类型,主要有以下几种:(1...原创 2020-11-18 17:18:41 · 248 阅读 · 0 评论 -
CS和BS架构系统测试点及区别
按照测试类型划分:1、功能性测试:C/S:服务器和客户端均会分担一部分的事务处理功能,需分开测试;B/S:服务器负责主要的事务逻辑,侧重点在服务器;2、业务逻辑测试:C/S:cs架构的应用偏重于工作流应用,业务逻辑较多,较复杂,要设计专门的业务用例进行验证;B/S:bs架构的应用更偏重于内容的展示(但是电商类型的交易网站除外),业务逻辑相对较少,着重于功能点验证;3、部署测试(也可以叫安装测试)C/S:应用需进行严格的安装,卸载以及更新测试;B/S:侧重于部署上的测试;原创 2020-11-06 09:32:15 · 4528 阅读 · 0 评论 -
网络知识
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的一些基础配置也是需要有一定了解的,今天会带大家针对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 评论 -
面试Python时必会的知识点总结
目前代码技能已经成了测试同学面试考核的刚需,对于测试开发来讲需求最大的是java和python两门语言,二者也都是面向对象语言。对于刚入门代码的同学来说面向对象相关的概念比较难于理解,而面向对象编程相关的知识点偏偏又是面试中的高频问题,所以本文我以python为例,带大家快速搞定面向对象中的核心概念并通过代码实现的方式来帮助大家对其加深理解!对象对象有两个层次的概念,现实生活中对象指的是可观世界的实体;而程序中对象就是一组变量和相关方法的集合,其中变量表明对象的状态,方法表明对象所具有的行为。.原创 2020-09-05 18:07:48 · 348 阅读 · 0 评论 -
搞定Python面试必问知识点——列表
Python3有6种标准类型:(Number(数字)、String(字符串)、Tuple(组),List(列表)、Dictionary(字典)、Set(集合))。其中,列表是Python中最基本也是最常用的数据结构。列表中的每个元素都分配一个数字,即它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。在关于python测试开发的面试中,列表是被问及频率最高的知识点,没有之一!本文详细的介绍...原创 2020-04-29 11:03:03 · 215 阅读 · 0 评论 -
备战2020,软件测试工程师面试题集锦
虽然测试行业在2019不太景气,面试后的一些面试题归集和总结,为了将来面试时使用。所有的面试题中我发现超过90%都是基础性的面试题,只要有自动化基础,功能测试接触,再加上面试的时候态度ok,且不卑不亢即可。切记,面试时一定要不卑不亢,切记心浮气躁和心虚,你懂得!1、http与https有何区别?答案:①https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。②ht...原创 2020-01-14 09:08:21 · 3457 阅读 · 0 评论 -
10道常见测试面试题分析,你都掌握了吗?
Q1:什么是回测?答:在新版本中,对上一个版本中测试过的所有功能,再重新测试一遍。Q2:为什么要做回测答:1.由于新版本中新添加的功能可能会对原有功能产生影响,带来新的BUG。2.解决的BUG可能有可能会产生新的问题,所以要对原有的功能进行回归测试,如果使用自动化的方式进行回归测试,效率会更高Q3:缺陷报告的处理过程(生命周期)?答:new→open→fixed...原创 2019-11-11 09:07:54 · 467 阅读 · 0 评论 -
100道经典测试开发面试题,从基础到进阶(1)
1、你在测试中发现了一个bug,但是开发经理认为这不是一个bug,你应该怎样解决? 首先,将问题提交到缺陷管理库进行备案。 然后,要获取判断的依据和标准: 根绝需求说明书,产品说明、设计文档等,确认实际结果是否与计划有不一致的地方,提供缺陷是都确认的直接依据; 如果没有文档依据,根据类似软件的一般特性来说明是否存在不一致的地方,来确认是否是缺陷; 根据用户的一般使用习...原创 2019-10-24 18:02:42 · 11623 阅读 · 0 评论 -
软件测试报告中常见的疏漏
测试人员编写软件测试报告常见的疏漏,以便大家避免,更好让测试成果呈现给客户(可能是自己的领导,也可能是用户,后文统称为客户)。文档模板的使用往往公司模板更新换代了,但测试人员仍然在沿用原来的模板。轻则说明你粗心,重则说明你不关心公司的变化、磨洋工。笔者曾经遇到过真实的例子,有一同事使用旧文档模板,但实际公司的名字和Logo都发生了变化,发送到产品经理,后果肯定是测试报告被打回,并通报批...原创 2019-10-25 12:28:32 · 348 阅读 · 0 评论 -
如何开发有效的可复用测试用例,又如何使用和管理?
在软件测试过程中,一个成熟的团队一般都有自己的公共测试用例库。公共测试用例库即可复用的测试用例库。今天我们就讨论一下如何开发有效的可复用测试用例,并学会如何使用和管理。一. 可复用测试用例的开发测试用例是为了验证最小功能点的一组输入、输出及操作序列的集合。可复用测试用例是指“为了复用目的而设计的测试用例”。复用的意义在于通过可复用测试用例验证功能相同或相近的模块,加快测试用例的设计进度、减...原创 2019-10-24 21:17:43 · 1006 阅读 · 1 评论 -
6道经典测试工程师面试题全面解析!
题目1:给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。说明:返回的下标值(index1 和 index2)不是从零开始的。你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。示例:输入: numbers = [2, 7, 11, 15], t...原创 2019-10-24 21:25:59 · 794 阅读 · 0 评论 -
软件测试的十三原则
软件测试过程中,我们应注意和遵循一系列的具体原则,在ISTQB 软件测试基础认证大纲上,列出了7 项原则,但其中最后一项原则“不存在缺陷(就是有用系统)”的谬论不能算是一项合格的原则,所以可以认可的原则是6 项。除此之外,在这里还列出作者认为比较重要的7 项原则,合起来共13 项原则。一、ISTQB 的6 项原则1)原则1——测试显示缺陷的存在,但不能证明系统不存在缺陷。测试可以减少软件中...原创 2020-01-20 15:13:15 · 665 阅读 · 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 评论 -
Fiddler抓包使用教程
概述Fiddler是做什么的,能帮助我们做什么?1、能够监听http/httpS的流量,可以截获从浏览器或者客户端软件向服务器发送的http/https请求;2、对截获之后的请求,我们还能够查看请求中的内容;3、伪造请求。不仅可以伪造客户端的请求,还能够伪造服务器的响应。——该功能能够方便我们进行前后端的调式。4、测试网站的性能;5、解密https的外部会话。因为https本身是一种加密的协议,通过fiddle我们可以进行解密操作;6、提供第三方扩展插件,满足更多需求。工...原创 2020-06-30 11:17:03 · 697 阅读 · 0 评论 -
十大软件测试问题,这里都解答了!
1、测试负责人需要进行测试进度跟踪吗很多时候,由于人力资源的不足,测试项目负责人都是在执行测试,这样就使整个项目缺乏控制,一些问题(例如:有些成员的缺陷质量不够合格;开发人员修改不及时,系统某些功能发生严重问题导致部分功能无法测试。)得不到解决,耽误了进度。所以测试负责任必须全程监控项目,尽可能多的掌握信息。通常,测试负责人需要完成下面这些内容的管理工作:测试用例执行情况;每个测试员提...原创 2019-11-06 11:37:25 · 785 阅读 · 0 评论 -
测试工程师职业发展漫谈
应不少同学的要求,通过本文分享下对测试工程师职业发展的看法,话题较大,不敢随便乱写,抛砖引玉,供大家参考。1.测试行业发展背景微软引领的大测试时代中国最早的对 IT 工程的启蒙和测试定位的探索大多来自于微软。当年的大背景是微软故意放任 Windows 的盗版,并积极的输出他自身的 IT 生态技术栈到中国。中国从政府到民间几乎全部使用了 Windows。中国有大量的微软认证的 VP 等各...原创 2019-10-31 15:41:10 · 433 阅读 · 1 评论 -
测试学代码的四座山,你被哪座干掉了?
功能测试,特别是手工点点点的阶段,是不需要懂代码的,但是只会手工测试,严格意义上来说,是不能称之为“软件测试工程师的”很多人也是抱着测试不需要懂代码,才选择了这个行业,是止步于此,还是往20k、30k去突破,或是肯定要会接口、会自动化,就必然要涉及到代码或是受不了其他职位的轻视,开发老大的不重视而想转岗,面对35岁大关被迫转行。如果真的看不懂代码,实际的测试后期的工作会出现什么样的问题呢?...原创 2019-10-28 19:29:54 · 288 阅读 · 0 评论 -
测试人员如何快速成长?
合理规划目标和知识体系 有了明确的目标和知识体系,可以让自己的时间和精力更聚焦,同时可以让自己在短期或者长期职场工作中获得更多的收入。这里首先会有一个问题,如何规划自己的目标和知识体系。新入职场,我可能都不了解行业情况、测试成长体系、测试岗位区分以及技能要求,搞性能测试还是自动化测试,还是安全测试等,这些岗位哪些钱多、技能要求是啥。甚至短期内不清楚工作内容需要用到哪些的核心知识,专注哪块的工...原创 2019-10-28 11:39:50 · 463 阅读 · 0 评论