- 博客(209)
- 收藏
- 关注
原创 Jmeter进阶使用:BeanShell实现接口前置和后置操作!
我们使用Jmeter做压力测试或者接口测试时,除了最简单的直接对接口发起请求,很多时候需要对接口进行一些前置操作:比如提前生成测试数据,以及一些后置操作:比如提取接口响应内容中的某个字段的值。总结:BeanShell代码和Java代码非常相似,有Java编程基础的同学可以快速的上手,通过编码的方式可以很好的扩展我们需要的功能,也是Jmeter进阶使用的必学必会知识之一 ~每一行我都加了相应的注释,方便理解该行代码的作用,应该已经非常好理解了。
2023-12-01 14:59:05
178
原创 jmeter做接口自动化测试,你可能只是个新手!
jmeter 这个工具既可以做接口的功能测试,也可以做自动化测试,还可以做性能测试,其主要用途就是用于性能测试。但是,有些公司和个人,就想用 jmeter 来做接口自动化测试。你有没有想过呢?下面我就给大家讲讲,用 jmeter 如何做接口自动化测试。
2023-12-01 14:55:33
322
原创 8年经验之谈 —— Redis的性能测试与优化!
Redis是一种高性能的Key-Value数据库,具有快速响应、高并发等优点。在实际应用中,我们需要对Redis进行性能测试与优化,以达到最优的性能表现。在进行测试时,我们需要选择优秀的测试工具,并设定合适的测试指标和参数。在进行优化时,我们需要根据具体的应用场景选取合适的数据结构、优化命令使用、优化系统架构等。希望本文能够对Redis性能测试与优化有所帮助。以上就是Redis的性能测试与优化的详细内容。
2023-11-30 19:54:19
489
原创 如何使用Selenium进行Web自动化测试?一文6个步骤轻松玩转!
Web自动化测试是现代软件开发过程中至关重要的一环。Selenium是一个强大的自动化测试工具,可以模拟用户在Web浏览器中的操作,实现自动化的测试流程。本文将介绍如何使用Selenium进行Web自动化测试,并附带代码示例,帮助读者快速上手。
2023-11-30 19:52:10
510
原创 如何做好前端单元测试?字节5年测试老司机是这样说的!
单测的定义在计算机编程中,单元测试(Unit Testing)又称为模块测试,是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。在过程化编程中,一个单元就是单个程序、函数、过程等;对于面向对象编程,最小单元就是方法,包括基类(超类)、抽象类、或者派生类(子类)中的方法。定义里面指出,单元测试针对的是程序的最小单元,因此我们应该针对最小单元来写单测。
2023-11-30 14:30:27
531
原创 接口自动化测试如何实现?5个步骤轻松拿捏!
整个项目完成之后,对pytest测试框架有了更深的理解。同时,pytest也可以使用Jenkins将自动化测试加入到持续集成中,设置定时任务构建或者条件触发构建等,这样可以有效的提高测试效率,也节省了人力成本。当然,不仅仅只有这一种实现方式,目前的实现方式还是有很多不足的地方,后面会继续进行完善和改进。如果你有什么好的建议和方法,欢迎一起进行沟通和交流。END今天的分享就到此结束了!
2023-11-30 14:28:53
633
原创 Locust单机多核压测,以及主从节点的数据通信处理!
脚本调试完后可以稳定运行,接下来就是测试的过程了,进行了服务器单节点、多节点负载能力的测试,水平拓展能力的测试,以及服务动态扩容、长时间高负载测试。这里可以做一些后置处理,我是简单起见,只是记录输出了本次测试用到了哪个号码段,这样我下次运行脚本的时候可以从后面的数据开始,最大化测试数据的使用,不浪费。,这样不同的 slave 节点接收的数据就可以放到队列里,运行的时候从队列里面取,用一个少一个,直到队列里的数据用完。这样,不同的 slave 节点脚步分配到的手机号段就是不同的了,解决测试数据重复的问题。
2023-11-29 14:37:18
922
原创 App的测试,和传统软件测试有哪些区别?应该增加哪些方面的测试用例?
从上图可知,测试人员所测项目占比中,App测试占比是最高的。这就意味着学习期间,我们要花最多的精力去学App的各类测试。也意味着我们找工作前,就得知道,App的测试点是什么,App功能我们得会测试,App非功能的性能,兼容,弱网这些维度的测试我们也要会。App的测试与传统软件测试在很多方面存在区别,主要是因为移动应用与传统软件在平台、用户交互、性能等方面有很大的差异。
2023-11-29 14:33:33
728
原创 如何使用APP UI自动化测试提高测试效率与质量?
python+appium自动化测试系列就要告一段落了,本篇博客咱们做个小结。首先想要说明一下,APP自动化测试可能很多公司不用,但也是大部分自动化测试工程师、高级测试工程师岗位招聘信息上要求的,所以为了更好的待遇,我们还是需要花时间去掌握的,毕竟谁也不会跟钱过不去。接下来,一起总结一下APP UI自动化测试的思路吧。
2023-11-28 19:51:48
418
原创 自动化支付宝小程序UI测试,AirtestProject和pytest助你一臂之力!
Airtest Project主要包含 Airtest 和 Poco 两个测试框架:Airtest框架,是一个跨平台的、基于图像识别的UI自动化测试框架,适用于游戏和App,支持平台有Windows、Android和iOSPoco框架,是一款基于UI控件识别的自动化测试框架,目前支持Unity3D/cocos2dx-*/Android原生app/iOS原生app/微信小程序,也可以在其他引擎中自行接入poco-sdk来使用,用appium做UI测试的同学应该比较容易上手。
2023-11-28 19:50:48
808
原创 快速掌握接口自动化测试的技巧和方法!
1. 项目介绍项目名称:头条项目描述:头条是一款基于数据挖掘的推荐引擎产品,它为用户推荐有价值的、个性化的科技资讯,提供连接人与信息的新型服务。2. 项目接口分析分析接口文档...3. 挑选需要做接口测试的功能现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛。
2023-11-28 14:58:15
348
原创 探秘:性能测试中最常见的陷阱与解决方案!
2.然后根据获取到的不同并发下的指标数据(并发数、tps、响应时间),画出上图,关注右侧的交点,即tps下降的地方和响应时间的交点,这个点的tps最大,如果响应时间在1s以内,此时并发数也是比较大的,这个点就可以认为是三个指标都不错的平衡点(当然,我这里把tps放在第一位优先考虑了,这个就看大家最在乎哪个指标了,排个优先级);1.尽可能多的做不同并发数下的压测,记录下响应时间(1s以内)和最大tps,当然,服务器端,各个服务器的资源利用率在可接受范围内(每个公司不一样,我们是90%以内);
2023-11-28 14:56:18
782
原创 Postman接口测试 —— 调用接口!
一、获取接口信息、通过接口文档/fiddler,Charles,F12等抓包获取接口信息二、分析接口信息(1)请求方式:get/post(2)参数方式:有哪些参数/参数类型/必填项(3)是否带请求头:带cookie/headers三、Postman的传参类型(1)创建集合:当接口太多时,我们在histroy中查找很不方便,可以创建集合,将相关接口放在一个集合下。
2023-11-27 14:24:20
332
原创 Postman接口测试 —— 设置断言和集合运行
Postman是一款非常强大的API接口调式工具,它自带断言方法,不需要学习JavaScript脚本,非常方便。(4)
2023-11-27 14:21:38
480
原创 揭秘:如何精准定位性能瓶颈,优化系统性能?
你好,我是小濠,目前在一家准一线互联网大厂做测试开发工程师。对于一般公司普通测试工程师来说,可能性能测试做的并不是很复杂,可能只是编写下脚本,做个压测,然后输出报告结果,瓶颈分析和调优的事都丢给开发去做。
2023-11-25 15:08:59
885
原创 从入门到精通:JMeter接口测试全流程详解!
利用Jmeter做接口测试怎么做呢?过程真的是超级简单。明白了原理以后,把零碎的知识点填充进去就可以了。所以在学习的过程中,不管学什么,我一直都强调的是要循序渐进,和明白原理和逻辑。这篇文章就来介绍一下如何利用Jmeter做接口测试的流程,主要针对的是功能测试。暂不涉及到自动化测试和性能测试的内容。
2023-11-25 15:05:31
892
原创 UI自动化(selenium+python)之元素定位的三种等待方式!
在UI自动化过程中,常遇到元素未找到,代码报错的情况。这种情况下,需要用等待wait。在selenium中可以用到三种等待方式即导入time模块,设定固定的等待时间缺点:在网络状态良好,元素可以加载出来的情况下,依然需要等待,会导致脚本允许时间延长。隐式等待是指页面元素在设定时间内全部加载完成,才能执行下一步。若超过了设定时间报异常缺点:页面的JS一般是放在body的最后加载的,若JS没有加载,页面想要的元素已经出现,这时还要继续等待。也会影响脚本执行速度。
2023-11-24 19:44:46
736
原创 自动化测试中几种常见验证码的处理方式及如何实现?
UI自动化测试时,需要对验证码进行识别处理,有很多方式,每种方式都有自己的特点,以下是一些常用处理方法,仅供参考。
2023-11-24 19:43:07
917
原创 快速入门Postman接口测试,让你轻松掌握接口测试技能!
下载安装postman工具,以下是postman的界面设置globals全局变量和环境变量。
2023-11-24 14:49:49
323
原创 【Jmeter进阶】压力测试大杀器:Jmeter使用技巧与总结!
代表一定数量的并发用户,所谓并发就是指同一时刻访问发送请求的用户。线程组就是模拟并发用户访问。建立所有线程的周期,就是告诉jmeter要在多久没启动所有线程,保证在最后一个线程启动时,第一个线程还在运行中,已达到压测的目的。默认值为0,,意味着jmeter执行测试立即就要启动完所有线程发送请求,很容易导致服务器过载,这是不合理的,我们想要的应该是逐渐增加用户访问量达到峰值。若设置为Ts,意味着每隔T/NS建立一个线程,在T秒内建立完所有线程。
2023-11-24 14:44:29
881
原创 轻松搞定HTTP接口测试,JMeter让你事半功倍!
在线程组中添加一个用户定义的变量,然后写key和value就可以了,key就是这个参数的名称,也就是你在脚本里面取的值,value就是具体值了。我们在做测试的时候,有时候要运行很久,公司用的测试服务器一般都是linux,就可以运行在linux下面,linux下面不能像windows一样有图形化界面,那怎么运行脚本呢,就先在windows上把脚本做好,然后在linux下运行即可,linux下运行jmeter是在jmeter的bin目录下的jmeter.sh这个shell脚本。参数化的作用:调用接口入参时。
2023-11-23 19:31:28
929
原创 超级武器!深入LoadRunner性能测试流程及极速分析结果!
性能测试是通过性能的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。
2023-11-23 19:28:13
848
原创 从入门到精通:掌握Python测试框架pytest的必备技能!
在介绍之前需要提醒一句,运行pytest时会找当前目录及其子目录中的所有test_*.py 或 *_test.py格式的文件以及以test开头的方法或者class,不然就会提示找不到可以运行的case了。如果带上-s,就可以显示了。在做接口测试时,有事会遇到503或短时的网络波动,导致case运行失败,而这并非是我们期望的结果,此时可以就可以通过重试运行cases的方式来解决。另外,pytest的多种运行模式是可以叠加执行的,比如说,你想同时运行4个进程,又想打印出print的内容。
2023-11-23 14:52:49
133
原创 保护你的APP!快速了解如何进行APP安全性测试!
数据库是否存储敏感信息,某些应用会把cookie类数据保存在数据库中,一旦此数据被他人获取,可能造成用户账户被盗用等严重问题,测试中在跑完一个包含数据库操作的测试用例后,我们可以直接查看数据库里的数据,观察是否有敏感信息存储在内。如果用户安装了第三方键盘,可能存在劫持情况,对此,我们在一些特别敏感的输入地方可以做检查,例如金融类APP登录界面的用户名密码输入框等,看是否支持第三方输入法,一般建议使用应用内的软键盘。在客户端注销后,我们需要验证任何的来自该用户的,需要身份验证的接口调用都不能成功。
2023-11-23 14:49:20
103
原创 什么是Selenium?如何使用Selenium进行自动化测试?
Selenium 是一种开源工具,用于在 Web 浏览器上执行自动化测试(使用任何 Web 浏览器进行 Web 应用程序测试)。等等,先别激动,让我再次重申一下,Selenium 仅可以测试Web应用程序。我们既不能使用 Selenium 测试任何桌面(软件)应用程序,也不能测试任何移动应用程序。这很糟糕,对吧?我能感觉到你的痛苦。但请放心,有许多工具可以测试桌面软件和移动应用程序,例如:IBM 的 RFT,HP 的 QPT,Appium 等。
2023-11-22 19:37:57
665
原创 谈一谈什么是接口测试?怎样做接口测试?
但是,前端的输入输出很多时候都是提供固守的值让用户选择(如下拉框),在这种情况下测试的边界范围就非常有限,但接口测试就不存在这方面的限制,相对来说接口可以覆盖的范围更广,同样的,接口出现问题的概率也更高。其实上面这几点,只有最后一点说的是比较靠谱的,第一点post请求也可以把数据放到url里面,get请求其实也没长度限制,post请求看起来参数是隐式的,稍微安全那么一些些,但是那只是对于小白用户来说的,就算post请求,你通过抓包也是可以抓到参数的。json是一种通用的数据类型,所有的语言都认识它。
2023-11-22 19:36:16
66
原创 自动化测试 —— 元素定位
自动化测试的概念:软件自动化测试就是通过测试工具或者其他手段,按照测试人员的预定计划对软件产品进行自动化测试,他是软件测试的一个重要组成部分,能够完成许多手工测试无法完成或者难以实现的测试工作,正确合理的实施自动化测试,能够快速,全面的对软件进行测试,从而提高软件质量,节省经费,缩短软件的发布周期。XPath即为XML路径语言,它是一种用来(标准通用标记语言的子集)在 HTML\XML 文档中查找信息的语言。XML 指可扩展标记语言(EXtensible Markup Language)
2023-11-22 14:42:41
193
原创 【性能测试学习】2023最有效的7大性能测试技术(建议收藏)
进入互联网时代,性能测试显得越来越重要,移动应用、web应用和物联网应用都需要进行性能测试和性能调优,而进行性能和负载测试会产生了大量的数据,这些数据难以分析。除了数据分析,我们还会遇到其它一些困难和挑战。今天我们就介绍七大高效的性能工程(测试)技术帮助你应对挑战,能进行有效的数据分析,高效地完成性能测试和性能调优。
2023-11-22 14:38:14
364
原创 如何做好性能压测 —— 压测环境设计和搭建!
仿真的性能压测环境,是执行有效性能压测的前提。不同的压测环境都有不同的应用场景,企业应根据自身情况进行选择。规模中小的公司独立搭建一套隔离的压测环境成本高昂,可维护性差。云时代的性能压测,阿里云上的PTS给高效压测带来更大的可能性。
2023-11-21 19:42:08
49
原创 什么是持续集成的自动化测试?
对于执行CD和devops的团队来说,自动化变得越来越重要,大家只需要专注在code和review中,其它过程都尽可能的自动化。如今互联网软件的开发、测试和发布,已经形成了一套非常标准的流程,最重要的组成部分就是持续集成(Continuous integration,简称CI,目前主要的持续集成系统是Jenkins)。越早通过用户和DevOps建立可持续反馈机制,可以帮助软件产品更好的迭代和修复缺陷,建立完善的反馈机制能够更早的发现问题,让我们更多的时间找到完美的解决问题方案。必须通过自动化测试。
2023-11-21 19:38:24
739
原创 不夸张地说,这是我见过最通俗易懂的,pytest入门基础教程!
使用表达式"--maxfail=num"来实现(注意:表达式中间不能存在空格),表示用例失败总数等于num 时停止运行。在实际项目中如果有很多用例执行失败,查看报错信息将会很麻烦。使用"--tb=line"命令,可以很好解决这个问题。输出结果中显示执行了多少条案例、对应的测试模块、通过条数以及执行耗时。本地写一个查询用户信息的接口,通过pytest来调用,并进行接口断言。--junitxml=./log.xml 生成xml报告。-v: 丰富信息模式, 输出更详细的用例执行信息。
2023-11-21 14:56:59
137
原创 【复盘】接口自动化测试框架建设的经验与教训!
此外,如果所测接口存在上下接口调用的依赖,则还需要进行全链路联调测试(不部分接口不是独立存在的,都是和其他接口相互调用的),联调测试是为了保证上下联路接口之间契约的准确性。针对用例开发成本高的问题,我通过在测试用例开发过程总结到HTTP不同请求方法对应的接口测试写法不一样,同方法的测试接口写法几乎一致,突然想到可以使用模板(freemarker)自动生成接口测试用例,然后我就整理几种接口测试用例生成模板(post、get等),这样大大降低测试用例开发成本,大家更多在于测试数据的准备和断言。
2023-11-21 14:53:27
341
原创 软件测试 —— 常见的自动化测试架构!
一个自动化测试架构就是一个集成体系,其中定义了一个特殊软件产品的自动化测试规则。这一体系中包含测试功能函数库、测试数据源、测试对象识别标准,以及各种可重用的模块。这些组件作为小的构建模块,被组合起来代表某种商业流程。自动化测试架构提供了自动化测试的基础,降低了自动化测试的难度。
2023-11-20 19:42:41
400
原创 性能小课堂:Jmeter录制手机app脚本!
环境准备:1.手机2.wifi3.Jmeter、具体步骤:1、启动Jmeter;2、“测试计划”中添加“线程组”;3、“工作台”中添加“HTTP代理服务器”;4、配置代理服务器:Global Settings下面的端口配置:9988,HTTPS Domains配置:http://10.200.52.88,目标控制器配置:测试计划>线程组其中,端口:随意设置;ip:电脑的ip,如下图设置
2023-11-20 19:41:01
138
1
原创 UI 自动化测试框架设计与 PageObject 改造!
由于 UI 自动化测试框架围绕 UI 界面使用,因此,依旧选用 PageObject 设计模式对 UI 及测试进行封装,同时配合 Pytest 单元测试将脚本能够有效的组织、连贯应用起来,从而提高框架的可维护性和可读性。当启动雪球 App 时,会进入首页。本案例将对雪球 App 进行 Page Objetct 封装与改进。因此,测试团队通常还需要一种定制测试框架,用以弥补现有框架的缺点。以上,供大家参考,欢迎一起留言探讨。
2023-11-20 14:52:29
363
原创 深入理解 pytest Fixture 方法及其应用!
在Python 中,pytest是一种广泛使用的测试框架,它提供了丰富的功能和灵活的扩展性。Fixture方法可以通过自动调用或显式调用来使用。自动调用是pytest的默认行为,它会在测试函数中自动应用适用于特定fixture名称的fixture方法。可以在pytest.fixture装饰器下定义fixture方法,并可以在测试函数中使用fixture名称作为参数调用它。最佳实践包括定义清晰、可重用和可维护的fixture方法,避免滥用fixture并编写良好的文档和示例来说明fixture的用途和用法。
2023-11-20 14:49:14
457
原创 为什么要写测试用例,测试用例写给谁看?
为什么要编写测试用例,测试用例写给谁看”,这个问题看似简单,但却涵盖了一系列复杂的考虑因素,并不太好回答。好,现在我们开始。
2023-11-17 20:05:25
88
原创 软件测试 —— 常见的自动化测试架构!
一个自动化测试架构就是一个集成体系,其中定义了一个特殊软件产品的自动化测试规则。这一体系中包含测试功能函数库、测试数据源、测试对象识别标准,以及各种可重用的模块。这些组件作为小的构建模块,被组合起来代表某种商业流程。自动化测试架构提供了自动化测试的基础,降低了自动化测试的难度。
2023-11-17 20:03:06
661
原创 接口测试系列之 —— 接口安全测试
一旦完成,需要实施一个流程,将文档添加 到任何新创建的 API 或服务中。这应该包括 API 的所有方面,包括速率限制、如 何请求和相应、资源共享、可以连接到哪些端点、以及它任何以后需要审计的内 容,还需要避免在生产中使用非生产 API,考虑给 API 增加一个时间限制等。API 将限制匿名用户每小时发出 200 次请求,已经被系统审核过的已知用户 会有更大的回旋余地,每小时有 5000 个请求,但即使是他们也受到限制,以防 止在高峰期意外超载,或者在用户账户被泄露并被用于拒绝服务攻击时进行补偿。
2023-11-17 14:56:03
143
原创 接口测试 —— 接口测试的意义
服务端提供API, 接口调用方在客户端,之间的通讯暴露在公网上,如果有不善意的用户抓包获取了支付接口,用1元价格购买到了100元商品,这是非常危险的,这就是安全性测试的一个方面。在快速迭代的情况下(如不停的更新活动界面),页面的改动可能会很频繁,而UI自动化测试本身基于页面元素,前端小小的改动可能需要测试的非常大的改动。不少的测试资料中强调,测试应该更早的介入到项目开发中,因为越早的发现bug,修复的成本越低。另外,UI自动化测试的稳定性问题,是长期以来阻碍UI测试发展的重要原因。
2023-11-17 14:52:06
231
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人