自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(840)
  • 收藏
  • 关注

原创 入职字节外包一个月,我离职了

有一种打工人的羡慕,叫做“大厂”。真是年少不知大厂香,错把青春插稻秧。但是,在深圳有一群比大厂员工更庞大的群体,他们顶着大厂的“名”,做着大厂的工作,还可以享受大厂的伙食,却没有大厂的“命”。他们就是大厂的“外包员工”。什么都做了,和什么都没做其实是一样的,走出“瞎忙活”的安乐窝,才是避开弯路的最佳路径。希望我的经历能帮助到有需要的朋友。

2023-01-28 19:27:25 25290 11

原创 自学软件测试怎么学?【史上最详细学习路线】(附全套资料)

对于想入行学软件测试的新手来说,首先需要一个高效的学习线路图,还要有全套的学习资料,两者结合才能有最好的学习效果。授人以鱼不如授人以渔,所以今天我也想把我的经验和经历分享给大家,史上最详细的软件测试学习路径和最全的学习资料包全部奉上,按照这个路线学习,大神指日可待!软件测试工程师的工作要求:文档评审,用例评审,需求评审;测试用例设计,自动化测试脚本开发,测试架构设计、写作测试文档(测试计划、测试方案、测试用例等);执行测试,发现软件缺陷,提交缺陷报告,并确认缺陷最终得到了修正;通过测

2022-03-08 22:25:14 6892 3

原创 干G货,性能测试基本方法和原则,

2、聚合报告:Samples发出的请求数、Average单个Request的平均响应时间(ms)、error错误率、Throughput简称tps,吞吐量,每秒处理的请求数。所以:性能指标是吞吐量最高的那个值,响应时间缓慢拉升到急剧拉升的拐点,硬件。3、在有IO(网络IO,磁盘IO)的时候,批量读,写,合并。2、数据库层面,加索引,加缓存,一些机算上的结果缓存,表数据太多,分表,sql优化。

2024-05-23 15:30:45 466

原创 Postman接口测试/接口自动化实战教程

1、如何编写测试用例postman 底层使用chai.js的 bdd 语法作为断言库,另外加了一些特有的语法。2、如何debug点击菜单栏 View -> Show Devtools (Show Postman Console) 可以查看响应,检查输出,不过不能打断点。对于系统的单个请求,可以使用 Proxy 监听请求进行调试。

2024-05-23 15:27:13 529

原创 扯一扯性能测试--包括哪些方面、指标?

​提到性能测试,很多从业相关人员可能会感觉比较混淆。性能测试,它是属于测试领域一个专业细分领域,和软件测试一样,性能测试涉及到的范围和所需要的技能是非常广而精的,如果从大的类型来划分的话性能测试可以被分为:​

2024-05-23 15:20:17 537

原创 Selenium自动化测试(断言 / fame框架处理)------实例

2、常见的断言包括:验证页面内容,如标题是否为xxx或当前位置是否正确,或是验证该复选框是否被勾选。:试图访问一个还未设置的全局变量,基本上是由于另有一个同名的全局变量,导致你以为在访问。:传入一个不被期望的值,即使类型正确。:语法错误,代码没有正确的对齐。:试图访问一个对象没有的属性。:使用一个还未赋值对象的变量。:试图访问字典里不存在的键。:传入的对象类型与要求不符。:Ctrl+c被按下。

2024-05-22 15:28:45 218

原创 Selenium自动化(等待 / 弹窗处理 / 滚动条 / 多窗口处理 / Cookie处理)-------详细

:返回alert/confirm.prompt中的文字内容。智能等待(隐式等待):(一般放在打开项目的前面一行):点击取消按钮,如果有取消按钮的话。:向prompt中输入文字。如:(删除商品时点击确定)

2024-05-22 15:26:08 347

原创 接口测试详解

软件接口指的是软件提供给外界的一种服务员。如:微信的提现和充值的操作, 调用银行对外开发的接口(支付、提现)这些接口有权控制(token(是指根据业务逻辑、输入参数、输出值的描述,对正常输入情况下所得的输出值是否正确的测试,也就是测试对外提供的接口服务是否正常工作。②数据库的增删改查,比如一个post接口操作完成后,通过列表页接口查看新的 数据是否和刚才的post一致。⑤格式:年月日、年月日时分秒、(/、-、:),手机号码、邮箱。1.鉴权码参数(token)异常:(空、错误的、过期的鉴权码)

2024-05-22 15:24:12 292

原创 频次最高的38道selenium面试题及答案

隐藏元素可以正常定位到,只是不能操作(定位元素和操作元素是两码事,操作元素是指click 、clear 、send_keys等这些方法)。Web元素可以是按钮,下拉框,复选框,单选按钮,标签等。的角色,跟client和浏览器通信,client根据webdriver协议发送请求给driver,driver解析请求,并在浏览器上执行相应的操作,并把执行结果返回给client。第一种:通过子元素定位父元素,selenium提供了parent方法,但是只能定位到父元素,却不能获取元素属性,也不能操作。

2024-05-21 15:47:40 523

原创 软件测试面试遇到之redis要怎么测试?

数据返回后,再把用户app中的缓存更新。这种场景一不需要使用缓存,二在商品信息被更新之后需要立即看到更新后的数据,不适合使用缓存,所以不建议使用缓存。且因业务数据庞大,各个统计sql执行效率非常低或无法直接统计:可以汇总各个指标,将统计值维护在缓存中,比如需要销量信息,每售出一件商品,销量统计值缓存+1,查看统计数据时查询此时的缓存即可。比如,针对请求参数变化不大,返回的数据跟db中存储的数据很接近的情况,适合在“里面”缓存数据,也就是在更新db的同时更新缓存,这种情况最优的状态下,只需要读缓存就够了,

2024-05-21 15:42:33 518

原创 测试工程师常见的面试问题及回答建议

1)目前绝大多数应用都是基于网络的分布式应用,我们无法知道用户数量,用户场景的不确定性,导致系统测试时,不仅仅是功能,业务逻辑,接口测试,还要测试系统性能。2)用户数量增加,系统负债增加,进行系统性能测试,知道系统承受的并发用户数量,带宽是否够用,cpu是否够用,内存是否够用,硬盘速度是否跟得上。1)负载测试:对于分布式网络,测试不同用户数量来测试系统的反应,主要关注性能指标,系统不同表现。3)模拟真实场景:真实的网络环境,用户操作时间不确定性,操作不确定,得出的数据是准确的,场景不对,数据也不一定可用。

2024-05-21 15:34:50 726

原创 Unittest单元测试框架之unittest构建测试套件

在实际项目中,随着项目进度的开展,测试类会越来越多,可是直到现在我 们还只会一个一个的单独运行测试类,这在实际项目实践中肯定是不可行的,在 unittest中可以通过测试套件来解决该问题。当测试用例存放在多个不同子目录下,我们用之前的把用例加载到测试集合中的方 式还是不太方便,需要不断的去导入和添加测试用例模块,此时可以通过discover()方法 来实现。该方法通过从指定的开始目录递归到子目录中查找所有测试模块,并返回包含它们的TestSuite对象,只要与模式匹配测试文件和可导入的模块名称才会被加载。

2024-05-20 15:05:06 561

原创 Jenkins持续集成之jenkins安装入门教学

6、安装完成后弹出jenkins界面并配置管理员密码;(如果没有弹出Jenkins界面,可直接输入地址:http://localhost:8090/)7、由于Jenkins默认端口为8080,可自定义端口号,并通过test prot测试端口是否可用。1、下载jenkins;8、自动匹配Java JDK的路径;5、安装到指定的盘;10、点击保存并完成后即完成操作。2、点击Download。

2024-05-20 15:02:47 229

原创 Jmeter性能测试工具之性能测试的概念

在新的场景中,我们假设这次理发店里一次来了9位顾客,根据我们上面的场景,相信你不难推断,这9位顾客中有3位的“响应时间”为1小时,有3位的“响应时间”为2小时(等待1小时+剪发1小时),还有3位的“响应时间”为3小时(等待2小时+剪发1小时)——已经到达用户所能忍受的极限。在这个模型中,需要理发的人员(即客户)向理发店(服务器)提出理发的请求,理发师的剪发时间为1小时,即服务器的处理时间,用户的响应时间为进入理发店的门到理发完毕的时间(等待时间+处理时间)。但是对于顾客D、E、F来说,“响应时间”延长了。

2024-05-20 14:56:37 702

原创 Python自动化测试-Jmeter做接口测试实际案例分享

get请求特点:        (1)get请求能够被缓存        (2)get请求会保存在浏览器的浏览记录中        (3)以get请求的url能够保存为浏览器书签        (4)get请求有长度限制        (5)get请求主要用以获取数据  post请求特点:        (1)post请求不能被缓存        (2)post请求不会保存在浏览器浏览记录中        (3)以post请求的url无法保存为浏览器书签        (4)post请求没有场地限制。

2024-05-18 15:22:46 741

原创 Jmeter 压力测试中关于 Http 的那些事儿

获取即将上映电影中的第一部电影的id,接口地址:https://api.douban.com/v2/movie/coming_soon?得到id后,请求接口获取电影条目信息,接口地址:http://api.douban.com/v2/movie/subject/${id}在“察看结果树”中可以看到,获取电影条目信息的HTTP请求中,请求参数正确。同时也得要正确的响应参数。笔者这里是获取id和year两个变量,设置默认值为0和0,这个可随意设置,影响不大。需要注意的是,多个变量名的话,还需要填写。

2024-05-18 15:13:56 819

原创 性能测试瓶颈问题+分析,一篇概全...

如何定位性能瓶颈?性能测试这种测试方式在发生过程中,其中一个过渡性的工作,就是对执行过程中的问题,进行定位,对功能的定位,对负载的定位,最重要的,当然就是问题中说的“瓶颈”。瓶颈产生在以下几方面:1、网络瓶颈,如带宽,流量等形成的网络环境;2、应用服务瓶颈,如中间件的基本配置,CACHE等;3、系统瓶颈,这个比较常用:应用服务器,数据库服务器以及客户机的CPU,内存,硬盘等配置;4、数据库瓶颈,以ORACLE为例,SYS中默认的一些参数设置;5、应用程序本身瓶颈;

2024-05-17 16:10:44 968

原创 从0到1精通自动化,接口自动化测试

DDT简介名称:Data-Driven Tests,数据驱动测试作用:由外部数据集合来驱动测试用例的执行核心的思想:数据和测试代码分离应用场景:一组外部数据来执行相同的操作优点:当测试数据发生大量变化的情况下,测试代码可以保持不变实际项目:excel存储测试数据,ddt读取测试数据到单元测试框架(测试用例中),输出到html报告什么是数据驱动就是数据的改变从而驱动自动化测试的执行,最终引起测试结果的改变。说的直白些,就是参数化的应用1、DDT使用-传递基础数据类型。

2024-05-17 15:41:07 342

原创 最细接口自动化测试yaml框架,超全详解

YAML文件介绍YAML 是一种可读性非常高,与程序语言数据结构非常接近。同时具备丰富的表达能力和可扩展性,并且易于使用的数据标记语言。YAML全称其实是"YAML Ain’t a Markup Language"(YAML不是一种标记语言)的递归缩写,所以它强调的是数据本身,而不是以标记为重点为什么要使用YAML文件?其实YAML文件也是一种配置文件,但是相较于ini,conf配置文件来说,更加的简洁,操作简单,还能存放不同类型的数据;而像ini存储的值就都是字符串类型,读取之后还要手动转换。

2024-05-17 15:31:22 514

原创 requests模块五种请求方式详解(get,post,put,delete,request)

REQUEST 请求是 requests 模块内置的一个通用方法,它可以处理所有类型的 HTTP 请求(GET、POST、PUT、DELETE等)。在这篇文章中,我们将介绍 requests 模块的五种请求方式(GET,POST,PUT,DELETE,REQUEST)以及如何使用Python代码进行操作。DELETE 请求通常用于删除已有资源。在本文中,我们介绍了 requests 模块中五种常见的请求方式(GET,POST,PUT,DELETE,REQUEST),并用 Python 代码演示了如何使用。

2024-05-16 14:43:42 574

原创 接口测试Jmeter+Ant+Git+Jenkins 持续集成

为了提高软件质量和开发效率,越来越多的团队开始采用持续集成来进行软件开发与测试。其中接口测试是持续集成中非常重要的一部分。本文将介绍Jmeter+Ant+Git+Jenkins实现接口测试持续集成方案,并提供Python代码示例。​

2024-05-16 14:39:19 618

原创 web 自动化测试,一定得掌握的 8 个核心知识点

传统主流的 selenium 框架是支持多语言的,大多数 QA 会的python 和 java 语言都可以编写 selenium 代码,遇到需要编写 js 代码的 cypress,以为又要学习一门编程语言,慢慢就放弃了。定义函数时使用 function 关键字,然后是函数名,括号里填入参数,参数之间用逗号隔开,最后是花括号之间的代码(即“函数体”),函数的返回值使用 return 关键字。在 js 的条件分支代码中,如果代码逻辑比较简单,经常使用三元运算符简化代码,它的使用方式是通过?

2024-05-15 15:14:33 891

原创 全网爆火的从零到一落地接口自动化测试

前段时间写了一系列相关的文章,当然更多的是方法和解决问题的思路角度去阐述我的一些观点。结合我自己实践自动化测试的一些经验以及个人理解,这篇文章来聊聊新手如何从零到一落地实践接口自动化测试。

2024-05-15 15:03:14 982

原创 Python+Appium自动化测试的使用步骤

这篇文章主要介绍了Python+Appium实现自动化测试的使用步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。安装完成后,启动Appium,host和port默认的即可,然后设置Android SDk和Java JDK。然后点下边那个保存并重启的按钮,然后点第一个Start Server按钮,将会看到。

2024-05-14 15:57:38 882

原创 数据中快速查找和提取的强大工具 JSON

总结本文介绍了JSONPath的基本语法和用法,并为您展示了如何封装和使用JSONPath方法来处理和操作JSON数据。通过封装JSONPath方法,我们可以更方便地进行数据查询和提取,提高处理JSON数据的效率和代码可读性。本文将介绍JSONPath的基本语法和用法,并为您展示如何封装和使用JSONPath方法来处理和操作JSON数据。封装的方法内部使用递归遍历JSON数据,根据表达式匹配对应的值,并将其添加到结果列表中。通过封装的JSONPath方法,我们可以轻松地进行JSON数据的查询和提取。

2024-05-14 15:50:42 341

原创 使用jmeter+ant进行接口自动化测试(数据驱动)

②安装好ant后,把jmeter中extras目录下的ant-jmeter-1.1.1.jar 文件copy到ant安装目录下的lib文件夹中。然后在jmeter.properties中,设置需要输出的内容为true,并去掉前面的注释符号#,这里全部设置成true。网上下载优化模板 jmeter.results.shanhe.me.xsl,拷贝到jmeter的extras目录中。③配置ant 编译文件 build.xml新建一个txt文件,并重名为 build.xml,内容如下。如下方式检验安装成功。

2024-05-13 15:05:00 708

原创 pytest-base-url插件之配置可选的项目系统URL

①当我们的自动化代码完成之后,通常期望可以在不同的环境进行测试,此时可以将项目系统的URL单独拿出来,并且可以通过pytest.ini配置文件和支持pytest命令行方式执行。②是一个简单的pytest插件,它通过命令行或配置文件提供可选的基本 URL。③在测试用例里直接传base_url参数,当做fixture函数使用(此时就会调用pytets.ini里面的base_url地址或者pytest命令行方式执行时的base_url参数)④base_url是pytest中的内置fixture函数。

2024-05-13 15:01:04 229

原创 软件测试具体人员分工

在时间一定有的情况下,投入的人员越多,发现的问题越多,从图中可以看出,投入的人员越多,人员发现缺陷的重叠度越高。有可能A人员在测试时会涉及到B人员测试的功能,并且发现了问题,不管是告诉B缺陷还是A人员直接提交缺陷(当然,你也可以装作没看到,等着B去发现),这都算不可避免的重叠。在实际的工作中,有大型项目,有小型项目,有客户端软件,也有互联网产品,有短到几天的项目,也有“永久”性的项目。4、人员水平难以区分,在一个项目测试过程中,有的测人员可能一个缺陷也没找到,有的测试人员却发现了几乎所有的问题。

2024-05-13 14:59:38 754

原创 Jmeter进行压力测试不为人知的秘密

根据我的经验,做单接口压测,用jmeter完全没问题;如果做页面压测,结果同样具有参考性,能反应大部分性能问题;如果要获得更准确的结果可以考虑其他工具,如熟知的loadrunner。

2024-05-11 15:04:13 990

原创 金融行业的软件测试分析

随着金融行业的业务不断增加,金融交易模式的不断变化,金融机构对信息化的要求也越来越高,高质量的金融软件对于金融机构来说显得尤为重要。如何保证金融行业软件的质量,对金融行业软件的测试人员来说,也提出了更高的要求。以下针对金融行业软件的测试做出了具体的分析:

2024-05-11 15:01:58 617

原创 接口测试vs功能测试

但是,前端的输入输出很多时候都是提供固守的值让用户选择(如下拉框),在这种情况下测试的边界范围就非常有限,但接口测试就不存在这方面的限制,相对来说接口可以覆盖的范围更广,同样的,接口出现问题的概率也更高。于是,为了向开发解释上述问题,普及基本的测试常识,特意梳理了接口测试的相关内容以及其与前端测试的区别,使开发团队与测试团队在测试这件上达成基本的共识,提高团队协作效率,从而更好的保证产品质量。除此之外,针对各自特性的测试都不一样,需要分别进行有针对性的测试,才能确保整个产品的质量。并没有解释为什么要做?

2024-05-10 16:28:35 831

原创 接口测试及常用接口测试工具

前端是什么呢,对于web端来说,咱们使用的网页,打开的网站,这都是前端,这些都是html、css写的;对于app端来说呢,它就是咱们用的app,android或者object-C(开发ios上的app)开发的,它的作用就是显示页面,让我们看到漂亮的页面,以及做一些简单的校验,比如说非空校验,咱们在页面上操作的时候,这些业务逻辑、功能,比如说你购物,发微博这些功能是由后端来实现的,后端去控制你购物的时候扣你的余额,发微博发到哪个账号下面,那前端和后端是怎么交互的呢,就是通过接口。

2024-05-10 15:30:01 528

原创 UI自动化测试之Jenkins配置

前一段时间帮助团队搭建了UI自动化环境,这里将Jenkins环境的一些配置分享给大家。

2024-05-10 15:22:24 550

原创 Jmeter接口测试

(3)启动jmeter,调用接口,通过察看结果树查看返回值。操作数据库基本有四个步骤:(1)导入mysql的jdbc的jar包 (2)创建数据库的连接配置,线程组里添加配置元件-JDBC Connection Configuration (3)线程组里添加jdbc request,写sql语句 (4)添加察看结果树,点击启动按钮,就能看到执行的SQL。无论要提取多少个值,引用名称就是一个的,比如名称为id,${id_go}:获取整个字符串ab,${id_g1}:获取的是a,${id_g2}:获取的是b。

2024-05-09 16:39:57 606

原创 软件测试需求分析

1) IEE软件工程标准词汇表( 1997年)中定义需求为:(1)用户解决问题或达到目标所需的条件或权能( Capability )(2) 系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或权能。(3)一种反映上面( 1 )或( 2 )所描述的条件或权能的文档说明。2) 需求是指明必须实现什么的规格说明。它描述了系统的行为、特性或属性,是在开发过程中对系统的约束软件需求的层次需求树的概念需求树的好处阅读理解各类需求结合界面原型图理解软件各部分功能。

2024-05-09 14:34:30 643

原创 接口自动化测试(Python+Requests+Unittest)

将大模块切分成小模块。原先是一个jar包里面包含所有模块,改一个模块就有可能影响其他模块,现在是将一个一个的模块都打成一个一个的jar包,模块与模块之间的交互通过接口,哪个模块出了问题,只需要修改那个模块的jar包,避免因为修改一个模块的代码导致其他模块出错。无论用POST请求还是GET请求,都能完成对数据的增删改查,分不同的请求方式更多的是一种约定。POST请求一般用于像登录这种安全性要求高的场合,请求不会被缓存,也不会保留在浏览器的历史记录中。自动化的一个明显的好处是可以在较少的时间内运行更多的测试。

2024-05-09 14:30:49 397

原创 appium+python自动化测试

4、下载完成后:在D:\androidsdk\android-sdk-windows\build-tools\24.0.0目录下找到aapt.exe,将这个路径设置环境变量,添加到path下。打开cmd,输入指令aapt dump badging,紧接着然后直接把要测试的APP拖入到cmd窗口,这时候就能看到apk的包的名称了;4、在pycharm运行脚本,随后在手机上会弹出安装下面两个软件的提示,安装后,桌面上多两个图标。3、勾选build-tools,随便选一个版本,我这里选的是24的版本。

2024-05-08 14:48:26 319

原创 3个UI自动化测试痛点

UI 自动化的收益主要是在多轮测试的时候才能体现出来,试想一个维护周期短的项目测试的轮次比较少,如界面测试就测试 1 到 2 轮即可,这样完全可以使用手工测试就行了。同时自动化脚本的开发和调试本身就需要一定的时间,如果项目的周期短,没有足够的时间支撑脚本的开发,那也无需自动化测试了。UI 自动化测试最大的挑战就是需求的变化,界面如果经常变动,脚本就需要重新编写,界面需求频繁的变更导致编写脚本的速度赶不上需求的变化,那 UI 自动化就是名存实亡,因此 UI 自动化测试特别适合需求稳定、不会频繁变更的项目。

2024-05-08 14:44:46 886

原创 python+selenium进行cnblog的自动化登录测试

Web登录测试是很常见的测试,手动测试大家再熟悉不过了,那如何进行自动化登录测试呢!本文就基于python+selenium结合unittest单元测试框架来进行一次简单但比较完整的cnblog自动化登录测试,可提供点参考!用户名正确,密码为空,登录失败!用户名错误,密码正确,登录失败!用记名为空,正确密码,登录失败!正确用户名,错误密码登录失败!正确用户名和密码登录成功!

2024-05-07 16:12:30 225

原创 第一次实操Python+robotframework接口自动化测试

用自带的是不是很繁琐,输入了那么多条才完成了一个请求,因此我封装了一个关于http的get请求库(当然checkValue也是我个人封装的一个函数~)ps:json和requests均为python导入的库!目前我们需要考虑的是如何实现关键字驱动实现接口自动化输出,通过关键字的封装实现一定意义上的脚本与用例的脱离!步骤六:输出一条场景的case,下面就是我个人创建的一个case(目前以第三库和自己带的方法输出的case)————————这一系列的基础支撑组件创建结束后————目录结构为————————

2024-05-07 16:10:48 553

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除