自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Jmeter Ultimate Thread Group 和 Stepping Thread Group

线程组:使用复杂场景的性能测试有时候我们做性能测试时,只依靠自带的线程组,显示满足不了性能测试中比较复杂的场景,下面这两种线程组可以帮助你很好的完成复杂的场景。

2024-03-20 22:36:29 880

原创 如何在 2024 年成为一名软件架构师?

软件架构是软件开发不可分割的一部分。它在定义软件系统各组件的组织结构方面起着至关重要的作用。有了软件架构,你就可以为软件应用和开发构建蓝图,并确定管理整个过程的准则。这为软件架构师在软件开发过程中帮助组织创造了巨大的空间。综上所述,接下来的部分将帮助您了解如何成为一名软件架构师、所需的技能以及其他常见问题的答案。

2024-03-13 20:01:51 514

原创 软件测试中的AI-为什么它在软件自动化测试中很重要?

通俗地说,人工智能(AI)是计算机科学的一个领域,它专注于使机器“智能化”。所谓智能,就是使系统能够像人类一样学习和做出决策。因此,人工智能机器将能够学习如何在特定情况下做出反应,然后根据其学习情况在未来场景中做出决策。人工智能(AI)在大多数领域的应用仍处于早期阶段,想要完美运行还需要很长时间。今天的人工智能(AI)技术可以帮助我们完成许多不需要复杂思考的重复性日常任务。接下来,让我们讨论软件测试中的人工智能(AI)

2024-03-13 19:59:05 969

原创 Python中random模块:随机数生成与应用

随机数在计算机编程中扮演着重要的角色,它们被广泛应用于游戏开发、密码生成、仿真等众多领域。Python提供了丰富而强大的random模块,旨在方便开发者生成高质量的随机数,随机选择和操作数据。本文将介绍Python中random模块的使用,包括随机数生成、常见函数的应用以及案例演示。本文介绍了Python中random模块的使用,包括随机数生成、随机选择和打乱数据等功能。我们还通过一个掷骰子游戏的案例,展示了random模块在实际应用中的灵活性和实用性。

2024-03-10 19:58:02 707

原创 管理技巧 | 提升团队效能:如何与下属进行有效沟通

因此,为每项任务设定明确的时间节点,并让这些时间点具体到星期几、几号,无疑会帮助下属更有效地规划自己的工作,并及时调整进度。在日常的管理工作中,沟通作为一项基础而关键的技能,往往决定了团队的协作效率和目标达成率。对于从技术岗位走上管理岗位的同学来说,一套完整的可落地的方法论是必不可少的,在这里推荐大家学习霍格沃兹测试开发学社的《测试管理训练营》,跟行业大咖学习管理技巧。作为一名管理者,我们需要不断地优化沟通策略,以激发团队的潜能,共同推动组织目标的实现。让我们在管理的旅途上,一起成长,一起进步。

2024-03-10 19:38:16 432

原创 Jmeter定时器

all cative threads in current thread group (shared ):与All active threads in current thread group 基本相同,唯一的区别是,每个活跃线程都会在所有活跃线程的上一次运行结束后等待合理的时间后再次运行。作用有:确保一些些请求的数据建立的先后顺序;和高斯随机定时器的作用差异不大,区别在于延时时间在指定范围内且每个时间的取值概率相同,每个时间间隔都有相同的概率发生,总的延迟时间就是随机值和偏移值之和。入参可以是单个变量;

2024-03-08 20:16:24 961

原创 Jmeter事务控制器实战

例如,使用JMeter录制脚本的时,JMeter会抓取整个页面加载需要的所有请求,生成的事务控制J器下面包含所有子请求(Home Page .jpg request,.gif request,.png request,.js request等)。测试计划-->Add-->Threads(Users)-->Add-->LogicController(逻辑控制器)-->Transaction Controller(事务控制器)JMeter控制器添加层次结构:测试计划-->线程组-->事务控制器。

2024-03-08 19:48:51 340

原创 Jmeter将接口查询结果列表按顺序赋值给各线程

Jmeter做性能测试会遇到这么一个场景:后面的请求需要根据前面的查询列表结果通过正则表达式提取器取值后赋值,而后面用户的赋须是唯一的,此值必时该如何做?现实中我们的查询列表请求还会带上page(页数),PageSize(分页条数),此时我们的用户(线程)要保证取值唯一,PageSize与线程数该如何赋值?8、最后我们再来运行下,看看取值结果(如下),即完美解决了将接口查询结果列表按顺序赋值给各用户,保证各用户赋值唯一的问题。如果我们要保证每轮每个用户(线程)取值都是唯一的,page该如何利用起来?

2024-03-07 11:09:39 341

原创 Jmeter压测分配业务比例

根据概率论,当取样量足够大的话,访问百度和51ste的请求比例会比较接近2:8.也可以在LR在场景设计里设置不同的请求的比例,来实现。比如,我们压测的过程中,要访问百度和51ste,并且请求比例是2:8,那么可以规定随机数取值1<=random<=100,然后再划分2个范围:当随机数的取值在80到100之间((80,100])。思路是:每次向服务器发出请求时,先生成一个随机数,我们对随机数的取值划分若干个范围(对应若干个业务请求),然后对随机数进行判断,当随机数落在某个范围内,就可以执行对应的请求。

2024-03-07 10:58:11 291

原创 Jmeter吞吐量控制器使用

从结果报告可以看出, 总线程组设置10个并发, 业务A选择percent Executions, 勾选per user, 并发数量等于总线程的并发数。B业务使用Total executions , Throughput设置了3, 实际运行并发数量是对应的3个。同时添加业务csdn的一个接口Throughput设为20, 表示此吞吐量控制器按线程组线程总数的20%设置线程组并发数10个。场景:在同一个线程组里,有10个并发,7个做A业务,3个做B业务,要模拟这种场景,可以通过吞吐量模拟器来实现。

2024-03-06 18:54:22 492

原创 Jmeter 对http接口压测

3)配置CSV Data Set Config元件,这里主要需要指明参数化取值文件路径(即前面我们新建的CSV文件),参数名(如上面CSV文件中主要有两个参数值,我们可以分别用username和passwd作为参数名,参数名类似程序中定义的变量名)9、通过上面步骤,就完成了参数化脚本的设置。现在要执行,那么首先来配置线程组,主要包括线程数,启用时间,循环次数。3、紧接着就是对HTTP请求进行设置了,主要设置服务器名称或IP,端口号,连接、响应时间,所采用的协议,请求类型,内容编码,路径,最后设置请求内容。

2024-03-06 18:42:54 1213

原创 Jmeter读取与使用Redis数据

list是可以存储多列有序的字符串,按照插入顺序排序,它可以在列表的头部添加数据,可以从列表的尾部添加数据。Jmeter 作为当前非常受欢迎的接口测试和性能测试的工具,在企业中得到非常广泛的使用,而 Redis 作为缓存数据库,也在企业中得到普遍使用,Redis Key:Redis中的key,Redis数据库中列表(有序数据)或集(无序数据)的名称,对应Redis数据库中的Key。Set:String 类型的无序集合,集合成员是唯一的,集合中不能出现重复的数据。

2024-03-06 18:38:10 904

原创 Jmeter从数据库获取数据并作为变量

在使用Jmeter做接口测试、压力测试时经常碰到,今天通过两个示例(实现MySQL数据库的查询结果的单值引用和多值引用)进行说明。3)查询结果值引用我们查询数据库的目的是为了引用查询的结果,即:testui,admin,Eva_208,Eva_208,Eva_208,Eva_208,Eva_208,Eva_208。Variable Name:数据库连接池的变量名,最好填写一个有实际意义的名称,后面JDBC request调用需要使用;说明:①引用的是第二行的,第一列的第二个值和第2列的第一个值;

2024-03-06 16:53:21 636

原创 Jmeter正则表达式提取器

肯定会有小伙伴会说,可以使用第三方的插件来实现,我用java写一个jar,把提取的值存储到map或者list里,然后用使用下标即可实现。贪婪与非贪婪模式是两种不同的表达式匹配行为,贪婪模式在整个表达式匹配成功的前提下,尽可能多的匹配,而非贪婪模式在整个表达式匹配成功的前提下,尽可能少的匹配。现在的问题是,如果我们要使用正则表达式提取后的:使用其中的第1个和第10个值,我们应该怎么去实现呢?匹配失败时的默认值。在引用时:通过${变量名_1}的方式来取第1个匹配的内容,${变量名_2}来取第2个匹配的内容。

2024-03-06 16:50:38 438

原创 Jmeter接口测试参数化

比如要选择用户的收获地址,往往需要选择省->市->区,而省市区这三个请求参数之间有关联性,此时可以通过自定义一组满足关联性要求的数据,将其写入CSV文件,然后在Jmeter中通过CSV函数来读取CSV文件。几乎可以实现接口单个请求参数的所有参数化工作,但在实际应用中,有时候不同请求参数有一定的关联性,此时无法通过RandomString来解决多请求参数之间的关联性问题,需要引入CSV组件来解决。Filename:这里要包括文件的路径,在4.0版本中可以点击右侧的浏览按钮选择文件,会自动带上文件的绝对路径;

2024-03-06 16:46:37 1015

原创 Jmeter接口测试断言

可以在察看结果树中将响应报文的格式从Text切换为Json Path Tester,并在Json Path Expression栏中输入相应的Json Path ,点击Test,察看JsonPath的定位结果。响应断言可以选择断言验证的范围(URL,响应头,响应码,响应体,响应附件),匹配的模式(纯文本还是正则表达式匹配)Jmeter最常用断言:Response Assertion(响应断言),Json断言,beanshell断言。找不到路径断言失败;响应文本:请求的响应文本信息,不包含响应头信息。

2024-03-06 16:34:14 1127

原创 Jmeter高效组织接口自动化用例

4、如果被测环境不仅仅用于自动化测试,甚至测试和开发环境没有分离,那么我们在做测试数据时应该加上测试专用标识,如对添加的测试数据行的主键统上“J一加KCS”这样的标识。使用变量的好处是方便我们维护测试数据,比如当测试数据发生变更时,我们不用一一去查找用例替换数据,只需要对变量中的值进行维护就能轻松搞定。如,上图中的GW-01-C1:GW取模块前两个汉字拼音的大写首字母,01为子功能的编号,C1则为用例序号。如,ZN_04_PRE1为04子功能的前置条件,而ZN_04_C3_PRE为用例3的前置条件。

2024-03-06 16:20:26 537

原创 HR 面试套路大全

如果你技术面试过了,进入最后一轮 HR 谈薪资,先别高兴太早,千万不要轻视 HR。BAT 大公司,HR 有一票否决权,即使你技术 OK,领导也觉得你 OK,但是 HR 觉得你不行,你依旧拿不到 Offer 的,那么 HR 到底都喜欢问什么?这是我从阿里和华为的资深 HR “老油条” 那里取得的真经,大家参考下。注: 题目来自 HR 朋友在网上筛选整理,加餐分享的形式展示在此节。Tip: 题目一下 9 个方向,每个方向最多只会问一个题目,时间限制不可能全问,面试前必须先想好每个问题如何回答。

2024-03-04 22:37:08 661

原创 测试基础|质量保障体系从1到N的思考

在2023年,重点构建了团队的质量保障体系,基本完成了从0到1的过程积累,也在多个不同的场合做了相关的分享,收获了很多同行给的建议和意见。今年的首个工作目标是把这套质量保障体系运营好,去覆盖更多的团队,完成从1到N的过程,让更多的团队从这个质量体系中获益,保障基本的交付质量。配合质量文化的建设,让团队构建起真正的质量意识,提升交付质量,赢得业务的口碑。同时,也需要保障体系的灵活度,其他团队有优秀的实践需要引入到这套体系中,不断地取长补短,让体系更丰富地完善,杜绝一刀切,杜绝盲目自大。

2024-03-04 14:05:02 437

原创 测试管理进阶 | 量力而行:避免成为替罪羊

然而,在职场中,我们需要明确边界,避免过度地帮助他人。虽然善良是美德,但过度地帮助他人可能会拖垮我们自己,使我们无法有足够的时间和精力进行个人的成长和学习。我们要明白,自己的事情永远是第一位的,我们不能总是为了帮助他人而牺牲自己的利益。对于从技术岗位走上管理岗位的同学来说,一套完整的可落地的方法论是必不可少的,在这里推荐大家学习霍格沃兹测试开发学社的《测试管理训练营》,跟行业大咖学习团队管理技巧。我们在工作中常常会遇到一些需要帮助他人的情况,作为团队的一员,我们希望能够积极地协助他人,尽力解决问题。

2024-03-04 12:28:43 373

原创 测试管理进阶--快速掌握高效沟通的汇报技巧

当我们承认自己的错误时,我们展现了一种诚实和责任感。但是,当我们能够坦率地承认并接受责任,我们表明自己愿意为自己的行为负责,这对于团队的凝聚力和个人的成长都是至关重要的。通过清晰、简洁的表达,我们可以确保对方对问题的本质和可能的解决方案有充分理解,从而更好地配合我们一起解决问题。在表达问题时,应该尽量使用简洁明了的语言,并提供相关的背景信息和具体的例子,以便对方更好地理解问题的全貌。此外,避免使用模糊的词语或术语,而是要用具体、明确的表达方式来阐述问题,从而使问题的本质清晰可见,有助于找到更好的解决方案。

2024-03-04 12:19:34 511

原创 软件测试人员必会的linux命令

● 如果使用 Git,可能会用到 git 相关的命令,如 git clone、git add、git commit 等。● 具体的数据库管理命令,如 mysql(用于 MySQL)或 psql(用于 PostgreSQL)。● tail -f:实时跟踪文件的末尾内容,用于实时查看日志。● vmstat:监测系统的虚拟内存、进程、CPU 等活动。● apt-get或yum:用于安装、更新和卸载软件包。● service:旧版本系统中用于管理服务的命令。● apt或yum:安装、更新和删除软件包。

2024-02-26 22:08:43 382

原创 性能测试类型都有哪些?

对于性能测试的类型及划分,业界有很多标准,然而每个类型都有不同版本的解释,且都有一些差别从狭义来看,性能测试主要用于描述常规的性能测试,指。从广义来看,性能测试是压力测试、负载测试、强度测试、容量测试、大数据量测试、基准测试等和性能相关的测试的统称性能测试的种类繁多,但实际执行时确实容易将多种混合操作,所以,我们仅理解对应的测试是什么即可。

2024-02-26 21:59:00 963

原创 一篇超级最全的python基础篇

Python支持多种数据类型,在计算机内部可以把任何数据看成一个”对象”,而变量赋值就是将变量和数据对象关联起来,即变量指向该数据对象.例如x=y,表示把变量x指向y所指向的数据对象,随后对y的赋值并不影响x的指向.Python的整数和浮点数没有大小的限制.若超出一定范围就用inf(无限大)表示.2. 字符串和编码tuple表示元组,即不可变的有序元素的集合.即没有修改元素的函数,例如append(),insert(),元素赋值等.

2024-02-25 16:27:33 994

原创 性能压测关注的指标有哪些?

这些指标可以根据测试目标和系统特性的不同而有所侧重,在实际的全链路压测中,需要根据具体的业务场景和性能目标选择合适的指标,并制定相应的测试计划。在进行全链路压测和性能测试时,需要关注多个关键性能指标(KPIs)来评估系统的性能表现,以下是一些常见的性能测试指标。一个量化用户满意度的标准,通过设定不同响应时间的阈值,将响应时间分为满意、可容忍和不满意三个等级。系统在短时间内处理大量请求的能力,重要的是系统能够在峰值期间保持稳定。成功完成的事务与总事务的比例,重要业务流程的成功率尤其重要。

2024-02-25 15:54:22 473

原创 如何提高测试人员在公司的影响力?“小题大做”少不了!

有了大体分享范围,跟团队同学讨论了分享的形式、分享的时间点,最终决定写成图文形式的文档,多截取真实图片,写清楚操作步骤,分享时间点大致定在了一个月后的第一个周五下午。同步地,我把分享时间大致同步给了这些主管们。现在分享范围、分享时间都确定下来了,剩下的就是按项目推动分享的材料准备、试讲、组织分享等内容了,这里就不过多介绍项目管理细节了,重点说说这个过程中做的“因为涉及了多个模块,且受众来自多个团队,所以我将这种分享拆分成了“总-分”结构,本次做一次整体视角的业务串讲,后续有具体模块的诉求,再具体沟通。

2024-02-24 11:16:59 280

原创 软件测试一一测试管理

通过功能测试,可以确定系统中的主要功能和业务流程,从而为性能测试提供重要的参考。通过性能测试,可以了解系统在不同负载下的表现情况,进而针对性地进行优化和调整,以提高系统的性能和稳定性。总之,测试工程师的工作是确保软件产品质量的关键环节,需要具备严谨的逻辑思维能力、良好的沟通能力和扎实的技术能力,以保证软件产品能够达到客户的需求和期望。:将自动化功能测试作为回归测试的一部分,在每次软件变更后进行自动化功能测试,可以确保回归测试的全面性和及时性,减少遗漏的测试点,保证软件的稳定性和质量。

2024-02-24 11:08:57 720

原创 如何管理测试团队:建立高效团队和优质产品

通过有效的招聘、考核、日常辅导、监控、问题处理、风险应对、跨团队协作和冲突管理,可以建立一个高效的测试团队,为产品质量和项目成功提供有力支持。首先,一定要考察测试人员技术的全面性,功能测试的能力、编程能力、linux使用能力、数据库的使用能力、自动化测试的能力和经验,以及性能测试的能力和经验。在一个软件测试项目中,团队领导定期召开项目进展会议,与团队成员共同分析项目进展和问题,并制定相应的解决方案。团队领导需要及时发现并处理冲突,促进团队成员之间的沟通和理解,寻找共识,并采取适当的措施解决问题。

2024-02-23 10:31:16 484

原创 微服务测试怎么做

单元测试:测试服务的一小部分,例如类。组件测试:验证单个服务的行为。集成测试:通过测试服务的适配器来验证服务是否可以与基础设施服务(例如数据库和其他应用程序服务)进行交互。注意:某些版本的测试金字塔会切换组件测试和集成测试的顺序。端到端测试:验证整个应用程序的行为。结合多种微服务测试策略可以提高测试覆盖率和对软件的信心,同时也。

2023-11-16 09:14:07 602

原创 SQL查询语句汇总

如果我们给students表增加一行,并添加class_id=5,由于classes表并不存在id=5的行,所以,LEFT OUTER JOIN的结果会增加一行,对应的class_name是NULL。,由于students表的class_id包含1,2,3,classes表的id包含1,2,3,4,所以,INNER JOIN根据条件s.class_id = c.id返回的结果集仅包含1,2,3。要获取第1页的记录,可以使用LIMIT 3 OFFSET 0:对结果集从0号记录开始,最多取3条。

2023-09-23 15:47:17 125

原创 接口自动化报告,生成本地服务并自动打开时失败

1、通过命令taskkill /f /t /im "进程名称" ,根据进程的名称杀掉所有的进程。或者taskkill /f /t /pid "进程PID" 杀掉进程(注意进程名称要输入全称,比如有的要加.exe)。2、结束对应的进程id或者是进程名称之后,再通过查找命令tasklist |findstr "进程名称",查找对应的进程是否结束成功。3、如要结束某个端口号对应的进程可以使用命令netstat -ano |findstr "端口号",查找出对应的pid号,然后结束进程。

2023-08-02 18:45:53 210

原创 MongoDB--基本命令

mongodb

2022-12-14 21:25:47 1356

原创 Linux--查询内核命令

Linux

2022-12-14 17:51:15 1607 1

原创 软件测试--测试计划

术语定义需求分析需求分析是确定系统功能-性能、组成、接口、进度、成本和设备配置的优化过程软件设计是将用户需求转化为软件的功能-性能、结构、组成、接口、质量和成本的优化过程。概要设计定义是根据需求规格书,进行功能分解,确定程序结构、数据结构的优化过程。概要设计从宏观角度解决软件“怎么做”的问题,把系统按功能分界成各个模块,明确各模块的功能以及它们之间的接口,即各模块之间的相互关系以及相互间传递的信息。详细设计定义详细设计是根据开发工具,把概要设计逐级细化成能在运行环境上进行编程的过程。

2022-03-29 09:07:09 1687 1

原创 MySQL一一查询的速度慢与性能差

(2)死锁是由于两个对象在拥有一份资源的情况下申请另一份资源,而另一份资源恰好又是这两对象正持有的,导致两对象无法完成操作,且所持资源无法释放。Undo Log: 未提交的事务,独立于表空间,需要随机访问,可以存储在高性能io设备上。key_buffer_size,定义了MyISAM所使用的缓存池的大小,由于数据是依赖存储操作系统缓存的,所以要为操作系统预留更大的内存空间;注意: 即使开发使用的表全部是Innodb表,也要为MyISAM预留内存,因为MySQL系统使用的表仍然是MyISAM表。

2022-03-24 19:32:49 495

原创 linux--把文件压缩成.tar.gz的命令

01-.tar格式解包:[*******]$ tar xvf FileName.tar打包:[*******]$ tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)02-.gz格式解压1:[*******]$ gunzip FileName.gz解压2:[*******]$ gzip -d FileName.gz压 缩:[*******]$ gzip FileName03-.tar.gz格式解压:[*******]$ tar zxvf FileNam.

2022-03-24 19:26:22 11884 3

原创 Jmeter一一阶梯式性能指标监听

1、添加阶梯线程组。

2022-03-24 19:24:16 406

原创 Oracle AWR报告生成和性能分析

一、AWE报告生成步骤对于SQL调优,局部SQL,我们可以直接使用执行计划等直接调优,而对于整个系统来说?这时候就可以用Oracle系统自带的报告对系统进行整体分析了,Oracle提供好几种性能分析的报告,比如AWR、ASH、ADDM等等 这篇博客主要介绍AWRAWR全称Automatic Workload Repository,自动负载信息库,是Oracle 10g版本后推出的一种性能收集和分析工具,提供了一个时间段内整个系统的报表数据。通过AWR报告,可以分析指定的时间段内数据库系统的性能。

2022-03-14 14:18:10 16017

原创 MySQL--concat

本文中使用的例子均在下面的数据库表tt2下执行:一、concat()函数1、功能:将多个字符串连接成一个字符串。2、语法:concat(str1, str2,...)返回结果为连接参数产生的字符串,如果有任何一个参数为null,则返回值为null。3、举例:例1:select concat (id, name, score) as info from tt2;中间有一行为null是因为tt2表中有一行的score值为null。例2:在例1的结果中三个字段id,na

2022-03-08 15:19:01 876

原创 Jmeter--注释

单行注释:双斜杠 //多行注释: 选择要注释的内容块,按住ctrl+/取消注释:选择要注释的内容块,按住ctrl+/

2022-03-03 17:29:18 1451

2024年软件测试工程师海量面试真题收录

软件测试高频面试题

2024-03-10

性能瓶颈分析及案例总结

性能瓶颈分析及案例总结

2024-03-04

空空如也

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

TA关注的人

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