- 博客(41)
- 资源 (1)
- 收藏
- 关注
原创 从基础到进阶,100道测试开发面试题,进大厂涨薪必备
1、你在测试中发现了一个bug,但是开发经理认为这不是一个bug,你应该怎样解决? 首先,将问题提交到缺陷管理库进行备案。 然后,要获取判断的依据和标准: 根绝需求说明书,产品说明、设计文档等,确认实际结果是否与计划有不一致的地方,提供缺陷是都确认的直接依据; 如果没有文档依据,根据类似软件的一般特性来说明是否存在不一致的地方,来确认是否是缺陷; 根据用户的一般使用习惯,来确认是否是缺陷; 与设计人员,开发人员和客户代表等相关人员探讨,确认是否是缺陷; 合理论述,客观严谨的向测试经理说明自己的
2022-07-21 10:41:44
826
1
原创 Jenkins持续集成自动化测试实战(下篇)
本例中直接将项目打成了jar包,那么可以直接在项目target目录下启动jar包完成项目部署运行。增加Execute Windows batch command构建步骤,在其中编写bat命令脚本完成项目jar包的启动. 编写项目启动脚本命令。 本例中,使用自研的关键字+数据驱动框架打包好的jar包完成自动化测试执行,同样使用cmd命令在本机完成执行。完成自动化测试用例设计编辑之后,继续增加Execute Windows batch command构建步骤,在其中编写bat命令脚本完成自动化项目Jar包
2022-07-12 14:47:06
856
原创 Jenkins持续集成自动化测试实战(上篇)
持续集成(CI Continuous integration/CD Continuous Deployment)的含义其实是在研发过程中团队开发成员持续性的将他们的工作集成到一个完整流程中,通常每个成员每天至少集成一次,每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。持续集成的主要流程如下: 整理研发体系里,开发、测试、运维的流程以及可集成部分包括:很多时候,开发自己进行持续集成操作的时候,进行到这一步保障项目可以正常部署,就已经结束了。在进行持续集成之前,请务必先确
2022-07-12 14:45:39
2812
原创 探索式软件测试
1、概念2、手工测试3、探索式测试4、局部探索式测试法5、全局探索式测试法6、混合探索式测试技术7、实践中的探索式测试8、测试需要培养的方向1、概念1、软件缺陷(bug)的根源来自于软件开发本身2、软件失效是指软件运行时产生的一种不希望或不可接受的外部行为3、软件失效的机理可描述为:软件错误→软件缺陷→软件故障→软件失效4、缺陷引入:程序员引入的缺陷,运行环境导致的缺陷5、预防和检测(1)缺陷预防-开发角度(2)缺陷检测-动态测试a.自动化测试(缺点:维护自动化测试代码需花费大量时间;优点:重复使用率高,提
2022-07-12 14:43:45
2243
原创 软件测试49个必问面试题合集+答案
01请自我介绍一下(需简单清楚的表述自己的基本情况,在这过程中要展现出自信,对工作有激情,上进,好学)面试官您好,我叫###,今年26岁,来自陕西西安,就读的专业是电子商务,毕业后就来深圳工作,有三年的软件测试工程师的经验,我性格比较开朗,能和同事小伙伴友好相处。02平时工作中是怎么去测的?(至少在这个问题中能说得出测试流程)首先根据客户需求文档提取功能模块,然后编写测试计划,提取测试点,设计测试用例,用例评审之后执行用例,提交bug,编写测试报告03为什么要离开上一个公司?(离职原因)你觉得你多久能适应我
2022-07-12 14:42:31
4865
原创 Postman工具的灵活运用
之前有写文章介绍了接口的定义,如何抓取接口报文,如果这些都没有问题,那恭喜你可以进阶啦,这个工具一定要学会哦!常见的接口测试工具有:Postman,Jmeter等。Postman和Jmeter都可以测试接口,但我更倾向用专业的工具做专业的测试。Postman用来做接口自动化测试更方便直观,Jmeter用来做性能测试更专业。当然Postman和Jmeter在接口自动化方面也都有自己的局限性,但作为初期的接口自动化工具是绰绰有余的。我们今天先看看Postman工具如何使用:首先就是Postman的安装:1:官网
2022-07-11 14:13:55
1130
原创 Linux之磁盘相关的命令及解析「df,du,iostat,iotop」
语法格式常用参数参数解析-a显示所有系统文件-B 指定显示时地块大小-h以易读的方式显示-H以 1000 字节为换算单位来显示-i显示索引字节信息-k指定块大小为 1KB-l只显示本地文件系统-t 只显示指定类型的文件系统-T输出时显示文件系统类型参考实例二、du – 查看文件或目录的大小语法格式常用参数参数解析-a显示目录中所有文件大小-k以 KB 为单位显示文件大小-m以 MB 为单位显示文件大小-g以 GB 为单位显示文...
2022-07-11 14:12:19
1738
原创 MySQL经典面试题 14 道
面试中经常被问到的 MySQL 题目,本文总结了面试中的经典问题。候选键 - 候选键可以是任何列或可以作为数据库中唯一键的列组合。一张表中可以有多个候选键。每个候选键都可以作为主键。主键 - 主键是唯一标识记录的列或列组合。只有一个候选键可以是主键。NOW () 命令用于以小时、分钟和秒显示当前年、月、日。CURRENT_DATE() 仅显示当前年、月和日期。以下是 MySQL 表中允许的触发器。16NSERT INTO table2 (id,uid,changed,status,assign_status
2022-07-11 11:59:42
834
原创 拼夕夕面试题之优惠券超发怎么去测试?
刚毕业那会,本人意外获得拼夕夕的面试机会,在聊到优惠券库存扣减场景时,面试官问了一连串经典的问题:“优惠券库存怎么扣减的?开发为了解决超发优惠券问题而设计的方案,了解过吗?你又是如何测试的呢?”。当时听到这些问题还挺懵的,没遇到过超发问题啊?开发设计的方案我怎么知道?现在想起来还挺幼稚的,其实现在想想电商中有很多类似的问题,比如商品超卖,归根究底,就是一个问题,那就是并发安全问题。就拿领取优惠券的问题来说,需求描述:A 优惠券一共发行 100张,每一个用户最多可以领取5张。当一个用户领取优惠券成功的时候,把
2022-07-11 11:58:18
840
原创 访问Linux服务器新轮子WindTerm使用
https://github.com/kingToolbox/WindTerm/releases 初始界面是这样的: 点击右侧的加号,可以选择不同的命令提示框,不同提示框里的环境是不一样的,这个一定要注意。 屏幕锁定时 ,是这样的: 可以设置锁屏时间 字体也可以: 软件重启,就可以了。...
2022-07-11 11:52:34
1528
原创 对于依赖第三方的接口如何进行测试?
之前在项目中遇到这种情况,1.跟第三方对接,联调的时候,若是对方的接口暂时没开发完成,但是有接口文档的情况下, 需要模拟。2.还有就是 常见的调用微信支付、支付宝支付的情况下,需要模拟。那我们在做接口测试的时候,测试这部分内容就需要自己模拟,假设第三方的接口完全是按照接口文档实现的,那么我们就可以使用postman来进行mock(一般用于测试环境),还有其他的moco 开源框架(moco-runner-0.12.0-standalone.jar)都可以实现。有没有遇到过如下几种情况:1. 后端代码还未开发
2022-07-08 12:02:55
5140
原创 Jmeter 插件测试dubbo接口
对于如何使用Jmeter测试http接口,大家都已经比较熟悉,网上相关的知识也很多。但随着微服务越来越流行,仅仅会测试http接口已经远远不够。Dubbo作为当下非常流行的RPC接口,学习如何测试Dubbo接口已经成为了测试人员进阶的必备知识之一。对于Dubbo接口的测试,可以通过编写代码的方式、使用工具的方式,今天我们先讲如何通过Jmeter Dubbo插件来测试Dubbo接口。一、插件下载插件下载地址:https://github.com/thubbo/jmeter-plugins-for-apach
2022-07-08 11:52:54
475
原创 你是怎么理解自动化测试的?理解自动化测试的目的和本质
其实自动化测试很好理解,由两部分组成,“自动化”和“测试”,所以我们要理解自动化测试,就必须理解“自动化”和“测试”,只有理解了这些概念,才能更轻松的做好的自动化测试。其中“自动化”可以想象成通过各种编程技术实现程序对被测系统可操控的行为,重点在于对“测试”的理解。所以首先作为一个测试人员,应该思考测试的本质是什么?大多数从事自动化测试的人都是从手工测试转型过来的,所以对于测试都不会太陌生,那么对于测试工作我们可以简单的认为两种情况:1,验证被测系统是正确的(即程序按照预期运行,认为做了正确的事情)2,寻找
2022-07-08 11:46:26
432
原创 如何从业务测试过渡到测试开发呢?
有关“功能测试转型测开,小白如何入行测试开发,还有测试开发之路怎么走”的话题,在业内的热度一直不减,也时不时被不同小伙伴问起。▎相关疑问“ 如何从业务测试过度到测试开发?“ 我是一个小测试,但不想一直当测试,还是想做测开,但是呢,网上没有什么关于测开的具体指导。去面试,别人问有没有什么自己做的工具平台什么的,但我想很多平台都是开源的,自己部署下就好了,需要测开做什么呢?在《Google 测试之道》一书中,关于测试开发工程师(SDET,Software Development Engineer in Test
2022-07-08 11:43:09
490
原创 带你轻松解密白盒测试及(Demo详解)
白盒测试”可以理解为一种专门用于评估代码及程序内部结构的测试技术,也有结构测试这么一说,因为白盒测试会涉及查看代码的结构。对于测试工程师而言,如果你知道软件产品/系统或应用程序的内部结构,就尽早展开针对性的测试以确保程序内部操作是按照规范运行的,并且所有内部结构都能得到充分的测试执行。随着互联网大数据AI时代的接踵而至,测试人员从原始的手工功能测试,进化到面向不同方向的自动化测试,与此同时职能岗位也从测试升级为测试开发。对于测试工程师而言,总有需要持续学习的东西,无论是领域、过程还是技术。今天我们就来聊一聊
2022-07-08 11:40:17
549
原创 软件测试如何快速具备前端三剑客能力
HTML是超文本标记语言,在Web开发三大语言中负责描述内容和结构,目前该语言标准已经发展到了HTML5。不同于其他的编程语言,HTML是一种DSL(Domain Specific Language,领域特定语言),这种语言专门用来结构化地描述网页的内容。它提供一种语义信息让浏览器很快明白整个超文本内容的框架结构。HTML是用树形结构来描述内容的,学过数据结构的同学能立马明白过来,只要是树形结构就一定存在两种关系:父子关系(parent-child)和兄弟关系(siblings)。举个例子大家就明白了:
2022-07-07 16:27:21
503
原创 一个超方便使用SQL的Python神器
其实一开始用的是pymysql,但是发现维护比较麻烦,还存在代码注入的风险,所以就干脆直接用ORM框架。ORM即Object Relational Mapper,可以简单理解为数据库表和Python类之间的映射,通过操作Python类,可以间接操作数据库。 Python的ORM框架比较出名的是SQLAlchemy和Peewee,这里不做比较,只是单纯讲解个人对SQLAlchemy的一些使用,希望能给各位朋友带来帮助。一般使用ORM框架,都会有一些初始化工作,比如数据库连接,定义基础映射等。以MySQL为例,
2022-07-07 14:32:20
432
原创 遵守指南,快速提升自己:功能测试如何快速转向自动化测试
好多小伙伴都是从功能测试入门的,从最开始或者更长的时间一直都在从事点点点的工作。觉得工作没有乐趣,枯燥,想要提升自己,但不知道自己该怎么做。不得不说,每个人都会有迷茫期,记得我刚出来工作的时候,隔三岔五的迷茫,根本不知道自己到底想要做什么,只能随波逐流的过一天是一天。但每次度过迷茫期都会有一点提升,因为在迷茫期的时候,会不断地纠正自己要走的路。所以,各位小伙伴在这个阶段就应该想想自己未来到底要怎么走。今天在这里分享的是一些大佬的切身感想!我的职业生涯:专项性能-功能测试-专项性能-自动化+功能从性能转向自动
2022-07-07 14:31:22
723
原创 测试开发技能:java语言之浮点数运算
浮点数运算和整数运算相比,只能进行加减乘除这些数值计算,不能做位运算和移位运算。浮点数有个非常重大的特点,就是无法准确 表示。可以看一个例子我们看下最后的结果 在判断的时候,我们可以做一些取舍,比如在一个合理的范围内可以认为二者相等。结果 浮点数在内存的表示方法和整数比更加复杂。结果 需要特别注意,在一个复杂的四则运算中,两个整数的运算不会出现自动提升的情况。例如结果 整数运算在除数为0时会报错,而浮点数运算在除数为0时,不会报错,但会返回几个特殊值:例如:结果 在实际生活中很
2022-07-07 14:29:07
822
原创 手把手教学UI自动化测试之数据驱动
在UI的自动化测试中,我们需要把测试使用到的数据分离到文件中,如果单纯的写在我们的测试模块里面,不是一个好的设计,所以不管是什么类型的自动化测试,都是需要把数据分离出来的。当然分离到具体的文件里面,文件的形式其实有很多的,这里主要说明JSON的文件和YAML的文件在UI自动化测试中的应用。JSON库主要应用于序列化以及反序列化中,特别是在API的自动化测试中,序列化以及反序列化是知识体系里面必须需要掌握的技术栈的体系。当然我们也是可以针对文件进行序列话和反序列化的处理,针对文件的序列化可以简单地理解为就是把
2022-07-07 14:27:26
317
原创 Linux综合性命令及解析
语法格式常用参数参数解析-d 改变显示的更新速度-c切换显示模式,更详细地显示路径及命令-s安全模式,不允许交互式指令-i不显示任何闲置或僵死的行程-n设定显示的总次数,完成后将会自动退出-b批处理模式,不进行交互式显示参考实例以默认格式显示系统运行信息:以默认格式显示系统运行信息,但提供完整的进程路径及名称:以批处理模式显示程序信息:设定每隔 5 秒刷新一次信息:设定总显示次数为 3 回,随后自动退出命令:字段解析推荐使用二、htop – 互动的进程查看器...
2022-07-06 10:57:34
111
原创 Jmeter常见压测错误解决
错误一:Response code: Non HTTP response code: java.net.SocketTimeoutExceptionResponse message: Non HTTP response message: connect timed out原因:查看Load time的时间要大于request设置的connect time out时间,因此抛出该异常。多是因为服务端有较多请求正在处理(且处理时间较长),致使JMeter不能链接上服务器而产生的错误二:Java.NET.Bind
2022-07-06 10:53:44
2244
原创 未来软件测试行业职业选择有哪些?
在我们开始尝试为大家描述软件测试工作的多种可能性之前,先来看看在现在所知最近代的开发模式中,测试人员还会继续存在吗?很多做测试的朋友问过这样一个问题:“现在敏捷开发模式中,自动化测试那么流行,而且连开发人员都开始做测试了,是不是以后就没有测试人员了?”其实测试工作并不会消失,而且敏捷开发模式带给我们新的机遇和挑战,那对于测试人员来说,职业发展的方向又有哪些呢?测试人员的职业选择首先我们需要明确想通过测试作为跳板,去做开发类和管理类等工作不在我们的探讨范围内。很多测试人员其实在选择软件测试作为职业的时候,其实
2022-07-06 10:49:38
144
原创 测试基础知识面试考点
一、软件测试的生命周期(软件测试流程) 二、BUG的描述开发人员需要获取对应版本的代码来重现BUG,版本的标识有利于统计和分析每一个版本的质量Web系统:硬件设备(电脑品牌,型号)软件设备(操作系统,浏览器即版本号)APP:硬件设备(手机品牌,分辨率)软件设备(操作系统及版本号)描述问题重现的最短步骤以用户的角度描述程序应有的行为是怎样的,可以的话写明需求的来源三、BUG的级别以下对BUG级别的描述只是典型情况,实际中的BUG级别的划分需看公司的定义崩溃严重阻碍到测试人员的工作,系统无法正常运行,出现崩溃,
2022-07-06 10:46:11
141
原创 2022年最新最全软件测试面试题大全
一、面试基础题简述测试流程:1、阅读相关技术文档(如产品PRD、UI设计、产品流程图等)。2、参加需求评审会议。3、根据最终确定的需求文档编写测试计划。4、编写测试用例(等价类划分法、边界值分析法等)。5、用例评审(主要参与人员:开发、测试、产品、测试leader)。6、开发提交代码至SVN或者GIT ,配管搭建测试环境。7、执行测试用例,记录发现的问题。8、验证bug与回归测试。9、编写测试报告。10、产品上线。补充测试用例设计过程:根据需求得出测试需求设计测试方案,评审测试方案方案评审通过后,设计测试用
2022-07-05 15:36:06
589
原创 Jmeter UI详细介绍及脚本生成,get,转发收藏
Jmeter UI介绍打开Jmeter后,我们可以把界面分成3个部分。 Jmeter脚本录制2.1 Jmeter HTTP代理服务器录制脚本操作步骤:第一步:右键测试计划,添加 配置元件--http cookie管理器。 第二步:右键测试计划,添加 threads(Users)--线程组。 第三步:选择测试计划然后鼠标右键,选择非测试元件--http代理服务器(http proxy server)。 第四步:配置并且启动http代理服务器。 常用配置项:端口:要求未被其它应用占用,一般不需要更改。可以通过命
2022-07-05 15:27:44
311
原创 不会接口测试?用Postman轻松入门(八下)——请求结果断言方法
上篇给大家讲解了用Postman做接口测试,请求结果断言方法常用的断言模板,这篇,我们一起来熟悉下不常用的断言模板有哪些?其中的含义很好理解,pm表示postman,在test方法中设置用例的名称Status code is 200。使用时,根据预期的状态码修改function中的200即可。通常情况下,希望获取到的返回状态码都是200。与Response Body: Contains string 类似,不同的是,Response Body: Is equal to a String需要设置的
2022-07-05 14:45:51
387
原创 不会接口测试?用Postman轻松入门(八上)——请求结果断言方法
完成postman的请求之后,要构成一个完整的接口测试用例,我们需要对测试用例设置预期结果并进行验证,在Postman中通过tests脚本里添加断言来完成预期结果的验证。postman中的断言操作在tests菜单中添加脚本进行设计,并且在Snippets列表提供了一系列模板可供使用,点击之后可以在tests脚本中生成对应的脚本代码,postman提供的模板如下: Postman中的断言使用非常简单:在Tests菜单中添加断言之后,重新点击Send发起请求,则会在返回结果窗中出现Test Results菜单列
2022-07-05 14:41:09
411
原创 Docker容器搭建android编译环境
1.1.2 启动容器1.1.3 配置环境进入容器之后,我们就可以安装AOSP的编译环境。不同的AOSP版本安装库可能会有差异,具体可以参考AOSP官网。这里以Android7.1为例。可以直接将这个脚本放在宿主机的/opt/aosp中,在容器内直接执行:1.2 Dockerfile这里有一个参考脚本,根据android官网提供的脚本修改。Dockerfile编译运行的时间太长了,我一般不用这个操作。我们需要将这个镜像提交成标准镜像,作为基础环境公用。如有必要,还需要导出镜
2022-07-04 14:10:04
1252
原创 学会这些python知识,就可以去面试了
1. 列出5个常用Python标准库?2. Python的内建数据类型有哪些?3. 简述with方法打开处理文件帮我我们做了什么?这里context_expression要返回一个上下文管理器对象,该对象并不赋值给as子句中的target(s),而是会将上下文管理器的__enter__()方法的返回值赋值给target(s)。不太清楚的可以参考链接:https://juejin.cn/post/68449037954035220564. Python的可变和不可变数据类型?5. Pytho
2022-07-04 14:09:10
136
原创 2022软件测试高频面试题汇总(附带答案)——建议收藏
1.性能测试关注的指标是什么?从外部看,性能测试主要关注如下三个指标:吞吐量:每秒钟系统能够处理的请求数、任务数响应时间:服务员处理一个请求或一个任务的耗时错误率:一次请求中结果出错的请求所占比例从服务器的角度看,性能测试主要关注CPU、内存、服务器负载、网络、磁盘IO等。2.性能测试是怎么做的?/ 如果你要进行性能测试,你是如何展开操作的?1.确定关键业务,关键路径;2.确定测试的关键数据。比如并发量,响应时间,循环次数等;3.准备测试环境,完成脚本录制或脚本开发;4.执行测试,观察或监控输出参数,比如吞
2022-07-04 14:08:21
900
原创 jenkins操作手册——巨详细,一篇足矣
随着软件开发复杂度的不断提高,团队开发成员间如何更好的协同工作以确保软件开发的质量已经成为开发过程中不可回避的问题。尤其是近年来敏捷开发在软件领域越来越火,如何能在不间断变化的需求中快速适应和保证软件的质量显得尤其重要。持续集成正是针对这一问题的一种软件开发实践。它倡导团队开发成员必须经常集成他们的工作,甚至每天都可能发生多次集成。而每次集成都是通过自动化的构建来验证,包括自动编译、发布和测试,从而尽快地发现集成错误,让团队能更快的开发内聚的软件。Jenkins是一个开源项目,提供了一种易于使用的持续集成系
2022-07-04 12:05:10
1618
原创 软件测试是什么?做软件测试如何才能实现月入20K?
标准定义:软件测试是使用人工或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。通俗来说就是在软件中发现缺陷的过程。软件测试的目的是尽可能早地发现软件缺陷并确保其得以修复,因此软件测试是提高软件质量的重要手段,软件测试越早参与到软件开发过程中越好,这样开发出来的软件质量相对越高,时间和物力也越经济。测试工作的最终目的是确保软件的质量,确保用户能够使用到优质量的软件,并且测试的时候,要站在用户的角度考虑软件的质量和性能。按项目开发流程分类按是否关注
2022-07-04 12:01:35
82
原创 Python+Selenium连接数据库,写入、获取数据
数据库先准备好,并建立好表我这里建了一个名为test的数据库,库下面有很多表,后面要用到vpn这个表 表的结构自己根据实际项目情况来设置,这里是id name password(记得设置数据库连接用户名和密码,一般默认为用户为root,密码为空。自己可以改)下面是一个在vpn1024软件上注册用户,并且把这个用户写到数据库里的脚本 我们在注册后链接了数据库,通过mysql.connector.connect来链接,输入好设定的用户名和密码。链接成功后通过插入语句来实现将数据写到数据库里。执行下这个脚本、结果
2022-07-01 15:05:30
787
原创 爬虫基础入门理论篇(下)
协议可以理解为“规则”,是数据传输和数据的解释规则,下图是简单图解 示例:以小明和小红利用qq软件发消息来再次讲解下osi7层模型小明在qq软件里面给小红发了一个“hello”数据封装交换机:发送给路由器路由器:发送给小红的物理层数据解封装 TCP/IP协议栈,TCP/IP协议继承ISO模型网上有的说是四层有的说是五层,四层的是将物理层没算进去,到底记哪一个,这个不冲突,都可以。 图示tcp/ip相比较iso少了表示层、会话层 TCP/IP各层实现的协议HTTP协议,又称之为超文本传输协议,是互联网上应用
2022-07-01 15:03:45
977
原创 爬虫基础入门理论上篇
近年来由于抓取数据而引起的纠纷越来越多,有的锒铛入狱,有的被处罚金,本人爬虫笔记学习提醒大家:爬虫有风险,采集需谨慎,写代码不能违法,写代码背后也有法律风险Robots协议,也称为爬虫协议、机器人协议等,全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉爬虫哪些页面可以抓取,哪些页面不能抓取如何查看网站的rebots协议?(1)打开浏览器,在地址栏中输入http://网站域名/robots.txt即可,以查询百度的robots协议为例;Disall
2022-07-01 14:59:16
367
原创 测试开发如何快速上手Vue前端开发(下)
接上篇,测试开发如何快速上手Vue前端开发(上),从环境安装、安装nodejs、安装HBuilderX创建Vue-cli项目、项目结构、项目发布。现在来看看项目开发和实现的效果。icon和logo修改。vue示例项目里面提供了两种静态文件引用的方式: Vue3常用组件:组件安装 组件使用备注:在组件安装里面,有详细的安装教程首先,我们使用npm安装组件到项目依赖然后,在main.js里面导入组件(注意,官网示例有兼容问题,此处给予修正),安装完,即可启动项目项目布局项目开发成什么样,主要
2022-07-01 14:51:55
109
测试开发必学Vue,开发百度网站
2022-07-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人