技术分享
文章平均质量分 86
跟我一起学测试呀
授人以鱼不如授人以渔
展开
-
手把手教你压测
身为后端怎么也要会一点压力测试相关的技术吧, 不然无脑上线项目万一项目火了进来大量请求时出现程序执行缓慢, 宕机等情况你肯定稳稳背锅, 而且这个时候短时间内还没办法解决, 只能使用物理扩容CPU, 内存, 更换网络等几种方式来解决问题, 妥妥的为公司增加支出好吧, 下一个被开的就是你都是想跑路拿高薪的打工仔, 身上怎么可以背负污点, 赶紧学一手压力测试进行保命, 我先学为敬本篇文章主打一个学完就会, 奥利给文中出现软件的版本。原创 2024-07-18 17:14:32 · 429 阅读 · 0 评论 -
软件测试——面试八股文(入门篇)
α测试:在受控的环境中进行,由用户在开发者的场所进行,并且在开发者对用户的指导下进行测试,开发者负责记录发现的错误和使用中遇到的问题β测试:在开发者不能控制的环境中的真实应用,由软件的最终用户们在一个或多个客户场所下进行,由用户记录在测试中遇到的一系列问题,并定期报给开发者。结语鉴于篇幅所限,选出经典17个软件测试面试题(入门篇)需要完整面经的朋友可以关注并私信我关键词“资料”免费领取。原创 2024-07-17 20:16:19 · 600 阅读 · 0 评论 -
手机扫描二维码的测试用例
二维码本身就是一个URL,只是通过QR码的形式把URL和用户身份信息转换成二进制的0和1,二维码中黑色的色素块代表1,白色的色素块代表0,我们通过相机扫码,就获取了二维码中的URL。· 打开扫描功能一段时间后没有扫描任何二维码,是否有提示用户或自动退出扫描功能。· 扫码后切换应用程序,看是否会闪退,黑屏,跳转回去是否会跳到相应的链接。· 是否支持相册获取二维码,当扫描不是二维码时提示是否正确。· 对付款码/非收付款码/旧码/手动涂改过的扫码校验。· 是否支持页面之间的链接跳转,跳转是否正确。原创 2024-07-15 20:47:38 · 492 阅读 · 0 评论 -
jmeter+ant+jenkins搭建 接口自动化测试平台
【代码】jmeter+ant+jenkins搭建 接口自动化测试平台。原创 2024-07-08 21:39:01 · 591 阅读 · 0 评论 -
搭建接口自动化测试框架详解
注] 因为是maven的项目所以要将testSuite的xml文件放在maven的test目录下,这样右键pom.xml文件maven test,所有的测试用例就开始执行了。对象ResponseBean,包括status、statusCode、contentType、body、url、method、cookies。测试用例管理使用了TestNG管理 ,使用了TestNG参数化测试,通过xml文件来执行case。例:这里测试获取角色的接口输入参数为,page和rows,mapRole.xml内容如下。原创 2024-07-05 21:51:38 · 1007 阅读 · 0 评论 -
如何用Jmeter进行压力测试
压力测试软件测试中:压力测试(Stress Test),也称为强度测试、负载测试。压力测试是模拟实际应用的软硬件环境及用户使用过程的系统负荷,长时间或超大负荷地运行测试软件,来测试被测系统的性能、可靠性、稳定性等。常用的压力测试软件有:LoadRunner、Apache JMeter、NeoLoad、WebLOAD、Loadster、Load impact、CloudTest、Loadstorm、阿里云PTS等等,本文介绍的是使用Apache JMeter来进行压力测试。原创 2024-07-03 21:19:55 · 983 阅读 · 0 评论 -
天天看美女直播,你知道如何用jmeter对直播间进行压测吗?
问题描述:接口请求频繁报错分析原因:接口限制,每分钟请求不能超过60次(这是不同业务系统的特性,主要看有没有做限制)解决方法:在接口请求下加一个定时器,延迟1000ms请求1次,这样1分钟就不会超过60次了。原创 2024-07-02 17:21:38 · 242 阅读 · 0 评论 -
Jmeter性能测试的标准流程
测试脚本中设置了断言,判断用户登录后是否出现“登录成功”字样,并设定“断言结果”查看器,通过查看断言结果,全部通过表示业务成功率100%-plugins.org/downloads/all/,下载plugins-manager.jar。重启后可以 添加-监听器-@gc-perfMon Metrice Collector。响应时间长,系统越来越慢,出现业务错误,通常原因。数据库服务器-机型-台数-CPU-内存-IP。应用服务器-机型-台数-CPU-内存-IP。添加->断言->响应断言:检查登陆成功。原创 2024-07-02 17:20:35 · 396 阅读 · 0 评论 -
软件测试之学习测试用例的设计(等价类法、边界值法、错误猜测法、场景法、因果图法、正交法)
这类软件一般都是在个人客户端上运行的,一般都是一对一的运行,不存在多人使用同一个服务器,所以对安全性和性能要求比较低,但是这类软件要求在不同环境下的使用,所以对可移植性要求比较高。把一个个孤立的功能穿起来形成一个场景,每一个功能的输入会触发流程走向不同的场景,根据不同功能的不同输入触发形成的不同场景进行测试用例的设计。客户端软件,word、ppt、音乐播放器等,此类软件对功能要求很简单,对性能、安全性要求比较低,软件的可移植性要求比较高。在功能的基础上做一些限制,满足特定场景的需求,让用户有更好的体验。原创 2024-07-01 21:35:30 · 769 阅读 · 0 评论 -
Jmeter接口自动化生成测试报告html格式
自带执行结果查看的插件,但是需要在jmeter工具中才能查看,如果要向领导提交测试结果,不够方便直观。笔者刚做了这方面的尝试,总结出来分享给大家。这里需要用到来执行测试用例并生成HTML格式测试报告。原创 2024-06-26 17:12:17 · 722 阅读 · 0 评论 -
Jmeter Linux环境压测Lottery接口
通过consmster查看delay是否较多,当不在生产时delay是否会清0。判断是否有消息,通过通知台查看消费的速度是否大于等于生成消息的速度。插件放到Linux中Jmeter的lib/ext目录下。通过cluster查看生成者的tps和消费者的tps。4、把测试计划中的Dubbo路径替换成。6、执行压测,观察是否有消息积压。②检查mq控制台是否有消息积压。5、上传压测脚本到压力机。原创 2024-06-25 20:17:00 · 375 阅读 · 0 评论 -
用postman进行web端自动化测试
概括说一下,web接口自动化测试就是模拟人的操作来进行功能自动化,主要用来跑通业务流程。主要有两种请求方式:post和get,get请求一般用来查看网页信息;post请求一般用来更改请求参数,查看结果是否正确变化;post请求还能用来验证字段的边界值、是否能为空和验证字段可输入的类型。web接口测试只涉及http/https请求,需要输入的内容有:请求方法、url地址、header相关信息、body相关内容、断言,下面详细说明用postman做http请求的使用步骤。原创 2024-06-24 20:29:17 · 1004 阅读 · 0 评论 -
性能测试之性能问题分析
4、稳定性:采取最优容量的80%作为压力持续运行24小时,观察系统长时间运行的性能表现,关注响应时间,tps,总tps,事务成功率,交易总数,观察是否有内存溢出(堆溢出,栈溢出,持久代溢出),cpu利用率是否达标,mem是否不持续增长,是否能正常触发fullgc,gc时间,gc频率, fullgc时间,fullgc频率(重点关注,JVM调优就是为了减少fullgc频率)。多少,总tps多少,稳定性交易总量多少,事务成功率,交易波动范围,稳定运行时长,资源利用率,测哪些交易,哪些接口,测试哪些场景。原创 2024-06-24 20:27:57 · 747 阅读 · 0 评论 -
数据库性能测试报告总结模板
5.SQL Server:Buffer Manager-Buffer Cache Hit Ratio: (在缓冲区告诉缓存中找到而不需要从磁盘中读取的页的百分比,正常情况次比率超过90%,理想状态接近99%)目标:从安全,可靠,稳定的角度出发,找出性能缺陷,并且找出系统最佳承受并发用户数,以及并发用户数下长时间运行的负载情况,如要并发100用户,如何对系统进行调优。测试范围:数据库处理服务器或客户端请求信息(插入,查询,更新,删除)语句时,服务器各项性能指标的性能测试。原创 2024-06-24 20:26:56 · 953 阅读 · 0 评论 -
性能测试知识之三大模型
该如何评估和建立。在工作中,业务模型、流量模型和是至关重要且必须在项目中构建的,否则很可能导致测试的场景和实际差距很大,测试结果也无法为性能分析和优化提供足够有说服力的支撑。原创 2024-06-22 17:01:49 · 815 阅读 · 0 评论 -
初识Robot Framework测试框架
Framework 是一款用 Python 编写的通用型测试框架,具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端(Web、PC、移动端)或者接口,也可以进行分布式测试执行。常用于验收测试和验收测试驱动开发(ATDD)的自动化测试。虽然框架本身是基于 Python 编写的,但也可以在 Jython(Java) 和 IronPython(.NET) 上运行,提供跨平台支持。Robot框架是一个通用的应用和技术的独立框架。它有一个高度模块化的架构,如图 1 所示(摘自官网)。原创 2024-06-21 20:48:36 · 585 阅读 · 0 评论 -
如何选择开源的自动化测试框架?这9款开源工具你一定要知道
⾃动化测试在未来将会越来越受到重视在移动互联⽹时代,对于质量的要求⽐PC时代⾼的多,⽽投⼊产出⽐最⾼的⾃动化测试,将会是⼤部分公司的⾸选⽅向,谈到自动化不得不提及自动化测试的核心,构建自动化测试框架。自动化测试框架由一组最佳实践,通用工具和库组成,可帮助测试人员评估多个Web和移动应用的功能,安全性,可用性和可访问性。而现在,软件开发世界中有很多的自动化测试框架,该如何选择?原创 2024-06-19 21:50:56 · 920 阅读 · 0 评论 -
压测怎么做?如何自动化?盘点各大公司全链路压测方案与实践
全链路压测指的是基于实际的生产业务场景、系统环境,模拟海量的用户请求和数据对整个业务链进行压力测试,并持续调优的过程。常用于复杂业务链路中,基于全链路压力测试发现服务端性能问题。原创 2024-06-18 17:15:29 · 364 阅读 · 0 评论 -
快速了解接口测试
什么是接口测试?接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。接口测试的原理?是通过测试程序模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做出处理然后再把应答报文发送给客户端,客户端接收应答报文这一个过程。为什么要做接口测试?原创 2024-06-18 17:14:27 · 317 阅读 · 0 评论 -
python+pytest接口自动化 —— 参数关联
参数关联,也叫接口关联,即接口之间存在参数的联系或依赖。在完成某一功能业务时,有时需要按顺序请求多个接口,此时在某些接口之间可能会存在关联关系。比如:B接口的某个或某些请求参数是通过调用A接口获取的,即需要先请求A接口,从A接口的返回数据中拿到需要的字段值,在请求B接口时作为请求参数传入。参数关联在接口自动化测试中是必然会遇到的场景,设计关联参数的用例会直接影响到用例的维护,当然这也是在接口自动化项目的架构设计时就需要考虑的问题。原创 2024-06-15 16:39:42 · 846 阅读 · 0 评论 -
做接口测试的流程一般是怎么样的?UI功能6大流程、接口测试8大流程这些你真的全会了吗?
接口测试需要围绕测试计划实施接口测试重点是:api文档分析、用例设计接口api文档分析要重点查看下面两项:1、请求参数说明 如:是否必填、类型、取值范围2、接口之间业务以来关系具体接口应用工具主要根据后台协议和测试计划测试工具来定,可使用工具如:postman、jmeter、requests、抓包(fiddler、charles)原创 2024-06-15 16:38:06 · 731 阅读 · 0 评论 -
接口测试详解
如:微信的提现和充值的操作, 调用银行对外开发的接口(支付、提现)这些接口有权控制(token(是指根据业务逻辑、输入参数、输出值的描述,对正常输入情况下所得的输出值是否正确的测试,也就是测试对外提供的接口服务是否正常工作。②数据库的增删改查,比如一个post接口操作完成后,通过列表页接口查看新的 数据是否和刚才的post一致。:硬件接口指的是硬件提供给外界的一种实体。⑤格式:年月日、年月日时分秒、(/、-、:),手机号码、邮箱。1.鉴权码参数(token)异常:(空、错误的、过期的鉴权码)原创 2024-06-14 16:40:29 · 409 阅读 · 0 评论 -
Selenium自动化测试(断言 / fame框架处理)------实例
2、常见的断言包括:验证页面内容,如标题是否为xxx或当前位置是否正确,或是验证该复选框是否被勾选。:试图访问一个还未设置的全局变量,基本上是由于另有一个同名的全局变量,导致你以为在访问。1、验证应用程序的状态是否同所期望的一致。:无法引入模块或者包,基本是路径问题。:传入一个不被期望的值,即使类型正确。:输入输出异常,基本是无法打开文件。:语法错误,代码没有正确的对齐。:试图访问一个对象没有的属性。:使用一个还未赋值对象的变量。:试图访问字典里不存在的键。:传入的对象类型与要求不符。原创 2024-06-14 16:39:17 · 400 阅读 · 0 评论 -
史上最全excel导入功能测试用例设计(以项目为例)
下图是产品列表,产品编码具有唯一性,每个产品都有成本价、省级价、市级价、特约价、终端价和车主价,这个列表主要是维护当前产品的价格(成本价在此不能修改),修改价钱的时候,变更原因分为两种:首次定价和价格修改。预期结果:正确导入,当前为空的价钱不修改,还是原来的,其他价钱正常修改,状态为待定价审核。预期结果:正确导入,各个价钱对应显示正确,状态变为待定价审核,变更原因为价格修改。预期结果:正确导入,不一致的价格修改,其他价钱不修改还是原来的,状态为待定价审核。欢迎各位优秀的小伙伴们补充,但愿这篇文章对你有用!原创 2024-06-13 21:49:18 · 829 阅读 · 0 评论 -
A/B测试是什么?面试官把我问懵了
因为AB测试是检验来自两个组样本平均数的差异性,从而判断它们各自代表的总体的差异是否显著,因此使用的是两个总体均值之差的检验。由于我们的测试样本不可能都一模一样,所以我们设定的两个一模一样的对照组的结果也有可能出现不一样的结果,这就是随机波动。随机波动会进一步影响测试的结果。试验实施:要积极的进行多维度的细分分析,除了总体对比,也看一看对细分受众群体的试验结果,不要以偏盖全,也不要以全盖偏。合理的进行正确的流量分割,保证试验组和对照组里的用户特征是一致的,并且都具有代表性,可以代表总体用户特征。原创 2024-06-12 17:02:51 · 663 阅读 · 0 评论 -
黑盒测试所涵盖的测试类型
黑盒测试是一种先进的测试方法,它所涵盖的测试类型广泛且有效。在软件开发过程中,应该采用黑盒测试和其他测试方法相结合,以确保软件系统的质量和可靠性。同时,测试人员也应该持续学习和更新测试知识,以提高测试效率和测试质量。原创 2024-06-12 16:42:46 · 483 阅读 · 0 评论 -
Jenkins环境配置篇-更换插件源
作为的利器已经得到了广泛地应用,仅仅作为一个工具,Jenkins 已然有了 自己的生态圈,支持其的 plugin 更是超过 1300+。在实际中如何使用以及如何更好地使用 jenkins,一直是大家在实践并讨论的。本系列文章将会从如何使用 jenkins 方面对一些细节 进行总结和整理,这篇文章将会介绍如何在 Jenkins 中更换插件源。原创 2024-06-11 20:47:27 · 425 阅读 · 0 评论 -
appium图像识别之images-plugin插件
在进行的过程中,由于页面的复杂性,需要根据页面的技术实现,通过上下文来切换不同的定位类型,给定位元素的稳定性带来了不小的挑战;则不依赖于页面本身是用什么技术实现的,只要能识别图片上的元素即可定位,从而成了未来探索的一个方向。appium提供了一些方法利用图像识别来定位元素。原创 2024-06-11 20:41:26 · 913 阅读 · 0 评论 -
REST 内容协商:全面解析
REST 内容协商是指客户端和服务器之间协商确定要传输的数据的内容和格式的过程。在中,客户端通常使用 HTTP 头部信息(如 Accept 和 Content-Type)来指示期望的数据格式、编码方式、语言等信息,服务器根据这些信息来确定返回数据的格式。当客户端和服务器无法就数据格式等达成共识时,内容协商机制可以使客户端和服务器协商确定最终的数据格式。原创 2024-06-07 16:53:02 · 696 阅读 · 0 评论 -
Python aiohttp 使用指南:快速入门教程
aiohttp 是一个基于异步 I/O 的 Web框架,专注于提供高性能、低开销的异步 Web 服务。它允许我们同时处理大量并发请求,而不会阻塞程序执行。aiohttp 使用 Python 的 async/await 语法来实现异步编程,这使得编写异步代码更加直观和简洁。在传统的同步编程中,每个任务都是按照顺序依次执行的。如果一个任务需要等待一些耗时的操作(如网络请求或文件读取),那么整个程序将会被阻塞,导致其他任务无法执行。原创 2024-06-07 16:51:20 · 1015 阅读 · 0 评论 -
Selenium/webdriver介绍以及工作原理
最近在看一些底层的东西。driver翻译过来是驱动,司机的意思。如果将webdriver比做成司机,竟然非常恰当。我们可以把WebDriver驱动浏览器类比成出租车司机开出租车。在开出租车时有三个角色:· 乘客:他/她告诉出租车司机去哪里,大概怎么走。· 出租车司机:他按照乘客的要求来操控出租车。· 出租车:出租车按照司机的操控完成真正的行驶,把乘客送到目的地。在WebDriver中也有类似的三个角色:· 自动化测试代码:自动化测试代码发送请求给浏览器的驱动(比如火狐驱动、谷歌驱动)。原创 2024-06-06 16:10:01 · 529 阅读 · 0 评论 -
软件测试要学习的基础知识——黑盒测试
黑盒测试也叫功能测试,通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作是一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,对程序接口进行测试,只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当接收输入数据而产生正确的输出信息。黑盒测试以用户角度,从输入数据与输出数据的关系触发,试图发现一下几类错误:功能不正确或遗漏界面错误数据库访问错误性能错误初始化和终止错误用例设计方法包括:等价类划分边界值分析决策表因果图场景法等等。原创 2024-06-05 21:54:32 · 532 阅读 · 0 评论 -
python+playwright 学习-1.环境准备与快速开始
说到 web 自动化,大家最熟悉的就是 selenium 了,selenium 之后又出现了三个强势的框架Puppeteer、CyPress、TestCafe, 但这3个都需要掌握 JavaScript 语言,所以只是少部分人在用。2020年微软开源一个 UI 自动化测试工具 Playwright, 支持 Node.js、Python、C# 和 Java 语言。原创 2024-06-04 22:10:06 · 782 阅读 · 0 评论 -
盘点:App 移动自动化测试工具
App移动端测试工具非常多,首先 区分 Android 和 iOS,以及 harmonyos 平台,每个平台下都有自己的自动化测试工具。自动化工具又区分 调试工具、monkey 工具、UI自动化工具。本文就来盘点以下,当下主流的app自动化测试工具。原创 2024-06-04 22:08:47 · 977 阅读 · 0 评论 -
Flutter 中的单元测试:从工作流基础到复杂场景
由于通过 DI 构建了UniversityEndpoint类,因此可以进行自定义网络拦截器。(如果 UniversityEndpoint 类自己初始化一个 Dio 类,就没有办法模拟类的行为。为了模拟Dio类的行为,需要知道 Retrofit库中使用的 Dio方法—— 但无法直接访问 Dio。"}),-1,"));现在已经创建了拦截器来模拟网络响应,接下来可以定义测试组和测试函数签名。原创 2024-06-03 21:39:49 · 776 阅读 · 0 评论 -
Jmeter压测实战:Jmeter二次开发之自定义函数
新建maven项目,这里项目名为:JSF_Sampler因为是基于Jmeter的扩展,需要依赖包Jmeter两个核心包,分别是:pom.xml文件核心配置如下实现类依次实现以下几个步骤1)新建实现类并继承AbstractFunction注意:实现类的包名必须包含 xxx.functions.xxx,Jmeter 使用命名规则实现实现类的加载。2)重写以下方法,每个方法的用途见下方代码注释execute()/*** 京东宙斯 下单标准字段常量*//**原创 2024-06-01 15:21:29 · 597 阅读 · 0 评论 -
倾囊相授之性能分析思路
在这一篇中,我说到了瓶颈的精准判断、线程递增的策略、性能衰减的过程、响应时间的拆分、构建分析决策树以及场景的比对,这几个环节,是性能分析过程中非常重要的环节。从我的经验上来说,这一篇文章可能是我工作十几年的精华所在了。而这里的每一个环节,又有非常多的细分,特别是构建分析决策树这一块,它需要太多的架构知识、系统知识、数据库知识等等。鉴于本文只是想起到一个提纲挈领的作用,所以无法展开描述,希望在后续的篇幅中,我们尽量细致拆解。原创 2024-06-01 15:18:42 · 722 阅读 · 0 评论 -
倾囊相授之性能分析思路
在这一篇中,我说到了瓶颈的精准判断、线程递增的策略、性能衰减的过程、响应时间的拆分、构建分析决策树以及场景的比对,这几个环节,是性能分析过程中非常重要的环节。从我的经验上来说,这一篇文章可能是我工作十几年的精华所在了。而这里的每一个环节,又有非常多的细分,特别是构建分析决策树这一块,它需要太多的架构知识、系统知识、数据库知识等等。鉴于本文只是想起到一个提纲挈领的作用,所以无法展开描述,希望在后续的篇幅中,我们尽量细致拆解。原创 2024-05-31 17:12:05 · 416 阅读 · 0 评论 -
小型企业的自动化部署脚本:简化部署流程,提高效率
如果不想把时间浪费在本地打包,忍受不了上传jar包的龟速网络,人肉停服和启动服务。请尝试下这款自动部署化脚本。小小的投入,带来大大的回报。原创 2024-05-31 17:10:32 · 806 阅读 · 0 评论 -
2种方法,jmeter用一个正则提取器提取多个值!
中,用json提取器,一次提取多个值,这个很多人都会。但是,用正则提取器一次提取多个,是否可以呢?肯定,很多人都自信满满的说,可以!?写一个这样的,不就是可以提取两个了吗!是的,这种做法没有错,但是,你发现一个问题吗?你的“ Name of created variable 引用名称” 应该怎么填呢?你是填一个,还是多个,多个你又用什么符号来分隔呢?然后,然后你就楞住了,因为你不能用正则提取器,同时把提取的多个值写到对应的变量中,虽然你理想的写了多个变量名称,也用符号分隔了。原创 2024-05-30 15:17:07 · 321 阅读 · 0 评论