- 博客(42)
- 收藏
- 关注
原创 k6面试高频问题
k6面试高频问题解析摘要 k6是一款现代化的开源负载测试工具,具有以下核心特点: 开发者友好:使用JavaScript编写脚本,比传统工具更符合开发者习惯 高性能:基于Go语言实现,单机支持10,000+虚拟用户(VU),内存占用仅为传统工具的1/3 架构优势:采用goroutine实现高并发,每个VU是独立的Go协程 完整指标系统:提供Counter、Rate、Trend、Gauge四种指标类型,支持全面的性能分析 云原生支持:易于集成CI/CD流程和容器化部署 关键架构设计包括JavaScript执行层
2025-12-04 18:11:01
1012
原创 k6完整监控集成
本文介绍了如何将k6性能测试工具与企业级监控系统深度集成。主要内容包括:监控系统架构设计(数据采集、传输、存储、展示和告警层),典型技术方案对比(InfluxDB+Grafana、Prometheus等),k6核心指标模型(HTTP、WebSocket和自定义指标),以及InfluxDB的详细集成方法(Docker部署、k6三种配置方式)。文章提供了生产级部署示例和最佳实践,帮助构建完整的性能监控体系。
2025-12-04 17:54:11
587
原创 k6文件操作(上传/下载)
k6文件操作摘要 k6提供了open()函数处理文件操作,支持文本、JSON、CSV和二进制文件读取。文件在初始化阶段加载到内存,供所有虚拟用户共享。JSON和CSV文件可配合解析库处理结构化数据。文件上传支持三种方式:直接上传文本/二进制内容、multipart/form-data格式上传以及使用更简洁的FormData对象。二进制文件需用'b'模式读取,上传时需设置正确的Content-Type头。FormData方式是推荐的文件上传方案,能简化multipart请求构建过程。
2025-12-03 11:41:02
1126
原创 使用 k6 对 WebSocket 测试
WebSocket测试摘要 k6支持全面的WebSocket协议测试,可用于评估实时通信服务的性能。通过k6/ws模块可建立WebSocket连接(状态码101表示成功),支持消息收发(文本/二进制)、事件处理(open/message/close/error等)和连接管理(超时设置、手动关闭)。测试脚本可模拟发送结构化JSON数据,验证服务器响应,并监控连接生命周期事件。关键功能包括设置连接参数(headers/tags)、实现双向通信、处理各种协议事件,以及通过超时控制和状态检查确保测试可靠性。
2025-12-03 11:35:00
908
原创 k6安装教程(全系统)
k6 是一款性能测试工具,支持多种操作系统安装。系统最低要求为 512MB 内存和 100MB 磁盘空间,推荐配置为 4GB 内存和 2 核 CPU。提供 macOS(Homebrew/MacPorts/手动)、Linux(Debian/RedHat/Arch/手动)、Windows(Chocolatey/Scoop/MSI/手动)和 Docker 等多种安装方式。安装后可通过 k6 version 验证,运行测试脚本确认功能正常。支持环境变量配置测试参数,并提供了常见安装问题的解决方法。可通过各平台包管理
2025-11-28 17:04:27
933
原创 k6核心原理
k6是一款高性能负载测试工具,其核心原理基于分层架构设计:JavaScript脚本层通过goja引擎执行,Go运行时引擎负责并发和网络I/O。采用Go语言实现带来显著优势:轻量级goroutine支持高并发(单机可达10,000+VU),低内存占用(100并发仅80-150MB)和快速启动。虚拟用户(VU)通过goroutine实现,每个VU拥有独立执行上下文和连接池。指标系统实时统计多种性能数据,HTTP客户端基于net/http实现连接复用和超时控制。性能优化手段包括对象复用、零拷贝技术和GC调优,使k
2025-11-28 16:57:52
1232
1
原创 企业级表单查询自动化测试:思路、用例设计与高效实现
表单查询自动化测试,是提升企业级系统质量保障能力的关键一环。通过科学的用例设计、合理的覆盖率目标、强大的通用代码封装,以及灵活的数据提取方法,可以大幅提升测试效率和用例质量。希望本文的思路和实践,能为你的自动化测试工作带来启发和帮助。欢迎留言交流自动化测试经验,互相学习共同进步!如需更详细的代码、业务场景定制化建议,欢迎评论或私信交流!
2025-06-16 12:15:28
1028
原创 Playwright 核心理念
本节我们将用通俗易懂的方式,深入浅出地讲解 Playwright 的设计理念和实现原理。通过实际案例,帮助你理解这个强大的自动化测试工具是如何工作的。
2025-05-13 16:41:20
1194
原创 Playwright 安装&配置文件详解
作用:配置测试目录、并发、重试、报告、支持的浏览器(Chromium/Firefox/Webkit)等。选择你想要的内容,然后按**回车(Enter)**键确认。Playwright 的主配置文件。执行后会进入交互式引导,
2025-05-13 16:40:46
3219
原创 Playwright 简介
Playwright 诞生于微软,团队成员大多来自 Puppeteer 项目(Puppeteer 是 Google 推出的无头浏览器自动化测试库,主要用于控制 Chrome/Chromium 浏览器,广泛应用于前端自动化测试和爬虫领域)。它不仅继承了 Puppeteer 的优点,还解决了业界长期存在的痛点。Playwright 可广泛应用于以下自动化测试场景:
2025-05-11 23:07:44
773
原创 Playwright自动化测试实战指南-高级部分
设置工作目录# 复制项目文件# 安装依赖RUN npm ci# 复制测试文件COPY . .# 设置默认命令# 构建镜像 docker build -t my-playwright-tests . # 运行测试 docker run --rm my-playwright-tests# 安装额外依赖ffmpeg \COPY . .RUN npm ciscreenshots: true, // 包含页面截图snapshots: true, // 包含DOM快照。
2025-04-24 11:36:36
1366
原创 Playwright自动化测试实战指南-中级部分
随着Web应用日益复杂,自动化测试变得愈发重要。Playwright作为一款现代化的自动化测试工具,提供了强大的跨浏览器测试能力。本文适合已经掌握Playwright基础知识,希望进一步提升测试技能的开发者和测试工程师阅读。我们将深入探讨Playwright的进阶应用,帮助你构建更加健壮、高效的测试方案。Playwright 提供了强大的截图和视频录制功能,便于调试和记录测试过程。视频录制Playwright 可以录制测试执行的视频,非常适合复杂用例的调试和问题复现。单个测试中启用录制:高级截图和录
2025-04-23 15:34:30
1214
原创 Playwright自动化测试实战指南-基本部分
记录用户在浏览器中的实际操作实时生成对应的Playwright代码支持多种编程语言(JavaScript, TypeScript, Python, Java, C#)提供精细控制和编辑功能帮助识别最佳选择器// 打印所有可用设备// 常用设备示例视口尺寸设备像素比(DPR)用户代理字符串触摸屏支持移动标志// 自定义设备// 在上下文中使用});// 或在测试配置中使用test.use({});
2025-04-23 14:13:23
1385
原创 Playwright与Selenium详细对比及Playwright快速入门
特性PlaywrightSelenium发布年份20202004开发商微软开源社区浏览器支持几乎所有主流浏览器,含旧版IE语言支持自动等待内置支持需手动配置代码生成原生支持需要额外工具架构基于CDP和WebSocket基于HTTP/WebDriver执行速度较快较慢测试稳定性高中到低现代Web应用支持优秀一般调试工具丰富,内置Trace Viewer基础,依赖外部工具社区规模中等但增长快大文档质量优秀优秀但分散学习曲线平缓。
2025-04-15 11:34:45
1237
原创 Pytest-@pytest.fixture夹具篇(一)
在Python的pytest测试框架中,是一个(不是唯一)装饰器,用于定义一个测试夹具。
2024-09-05 17:57:51
2139
原创 测试开发面试题
简述自动化测试的三大等待简述自动化测试的三大等待你对selenium 二次封装的关键字,是怎么封装的?以等待元素的关键字举例,设计了哪些参数?主要就是对一些繁琐的操作抽象成简单易懂的函数或方法。
2024-05-21 21:56:33
468
原创 SpringBoot集成的mybatis-plus的代码生成器Generate Options的使用(无需代码)
SpringBoot集成的mybatis-plus的代码生成器Generate Options的使用
2023-06-05 11:02:57
3055
1
原创 Spring Boot 开发中遇到的一些问题的解决方案以及一些工具类
本方法使用于数据库结构为:id,parent_id 的数据,这两个字段为必要,其他可扩展。
2023-04-26 22:11:48
625
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅