- 博客(63)
- 资源 (51)
- 收藏
- 关注
原创 Dubbo灰度发布完全指南:从精准引流到全链路灰度
而在以Dubbo为核心的现代微服务架构中,灰度发布(金丝雀发布) 让你可以像外科手术一样精准:只让1%的特定用户(如内部员工)访问新优惠券服务,其余99%的用户依然使用稳定版本。它允许你为服务提供者实例打上标签(如 env=gray),然后通过规则将带有特定标签的消费者请求,精确路由到对应的提供者集群,实现流量的逻辑隔离。本文将为你深入剖析Dubbo中实现灰度发布的三大核心武器:标签路由、参数路由和分组与版本控制,并通过一个完整的电商系统案例,手把手带你掌握从简单引流到全链路灰度的全套实战技能。
2026-02-12 15:38:17
400
原创 Golang高性能本地缓存库LocalCache推荐
它的设计亮点在于“缓存雪崩”防护机制:当多个节点同时请求一个冷数据时,只有一个节点会去源头获取数据,其他节点则等待其结果,避免了对后端服务的冲击。因此,以下提供的数值是基于这些库的官方或社区基准测试得出的大概量级,主要用于横向比较,建议在自己的业务场景下进行实际压测。// - maxCost: 缓存的最大成本(例如,总字节数或总项目数)。// 1. 创建一个新的缓存组// “my-cache-group” 是组名// 64 << 20 表示 64MB 的缓存大小// getter 是上面定义的回调函数。
2026-02-12 15:35:17
456
原创 【无标题】
Python的连续比较是「链式逻辑」,a < b < c等价于a < b and b < c,而不是(a < b) < c。Python的//是「地板除法」,不是「截断除法」——结果会向更小的整数靠拢(比如-5/2=-2.5,更小的整数是-3),而不是简单去掉小数部分。上面的错误示例中,x > 0 & y > 0等价于x > (0 & y) > 0,计算后是1 > 0 > 0,结果为False。print(“ab” in [“a”, “b”]) # False(正确,但新手可能以为是True)
2026-02-05 14:54:01
433
原创 用 Go 重写了 Python 网关,性能提升 10 倍
如果性能提升不能转化为用户体验的改善(如更流畅的交互)或成本的显著降低(如服务器费用减半),那么这种优化就是没有商业价值的。一位开发者 分享了他即使成功将一个 Python 服务重写为 Go,并取得了显著的性能提升,却依然感到挫败和后悔的经历。团队共识:重写不应该是个人的“独角戏”,而必须是团队的战略决策。Go 是一把锋利的“屠龙刀”,但如果你的面前并没有龙,用它来切菜,可能不仅切不好,还会伤到自己。正如一位开发者指出的:“你花了公司两个月的薪水和机会成本,解决了一个并不存在的问题。
2026-02-05 14:41:47
487
原创 Spring Boot 测试
外部设施:用 Testcontainers 连真实数据库、消息队列。- 框架集成真刀真枪:用真 Spring 校验器、序列化、安全注解。- 控制器校验/授权、JPA 查询、Security 配置、缓存行为。- 唯快不破:毫秒级执行,不连库、不发 HTTP、不碰磁盘。- Mock 外部依赖:用 Mockito 把依赖挡在外面。- 关键业务流、API 契约、安全集成、多组件协作、性能回退。- 即时定位:一旦失败,立即知道哪个方法、哪条分支出错。- 测边界:空值、越界、异常路径最适合在这里覆盖。
2026-01-21 11:02:32
617
原创 Apipos推荐
它支持从Postman导入数据,并且支持相同的脚本,使得我可以轻松地过渡到Apipost,而不会失去功能。虽然我能使用英语,但在遇到一些复杂的技术术语时,我经常需要花时间搜索,打乱了我的工作流程并延长了学习曲线。Postman 是我一直以来的首选工具,它因其调试和自动化API测试的能力而广受欢迎,几乎成为现代开发者不可或缺的工具。这种自由确保了我的信息不会受到潜在威胁的影响,消除了因互联网连接问题或长时间加载所带来的担忧。在寻找更有效的解决方案时,我发现了一个名为Apipost的工具。
2026-01-08 13:53:47
289
原创 性能测试工具 Arthas 介绍
watch com.example.Service getUser “{params,returnObj}” -x 2 # 查看参数和返回值:cite[3]:cite[6]trace com.example.Service getUser # 追踪方法内部调用链及耗时:cite[7]:cite[9]redefine /tmp/MyClass.class # 热加载到JVM:cite[2]:cite[4]· 生产友好:特别适合线上环境快速排查,避免“加日志→发布→复现”的长周期。
2026-01-05 17:26:05
647
原创 现代化的 Python 包和项目管理工具
uv 使用 Astral 的 python-build-standalone 项目提供的 Python 分发版本,确保兼容性和可重复性。此命令会将 requests 添加到 pyproject.toml 文件中,并更新 uv.lock 文件,同时安装该依赖。· 统一的依赖管理:通过 pyproject.toml 和 uv.lock 文件实现可重复的环境配置。· 兼容现有工具链:提供 uv pip 等命令,兼容现有的 pip 工作流程。在这个过程中,uv 会自动创建虚拟环境,安装依赖,并运行应用。
2025-12-30 16:04:06
305
原创 JavaScript 框架的终结
重构测试再顺手把你的理智也一起重构掉。Angular、React、Vue、Svelte、Solid、Astro、Qwik、Remix、Next、Nuxt、SvelteKit……没有 jQuery。没有 useState。而如果你这十年一直在做 Web,你一定懂我在说什么—— 我们一直在一台叫“框架迭代”的仓鼠轮上冲刺。你的 Todo App 不需要 hydration。你的落地页不需要 Redux。3)别把框架当职业你的职位不是 React。你的技能不是 JSX。框架当年变成主流,并不是因为它们“美”。
2025-12-29 17:52:33
451
原创 LLM重塑游戏自动化测试的底层逻辑
另一方面,传统的自动化测试因其固有的脆弱性(如对UI元素变化的极度敏感),导致维护成本高昂,反而在关键时刻成为迭代的瓶颈。在WeTest与徐汇游戏服务产业中心合办的一场以“游戏AI技术提效”为主题的前沿技术研讨中,腾讯专家展示了基于LLM的智能体如何为游戏测试注入“认知智能”,从而重新定义自动化测试的边界与价值。未来,测试工程师的核心价值将不再是编写和维护脚本,而是设计更刁钻的测试场景、定义更复杂的验收标准,并驾驭AI测试员去执行。LLM的引入,标志着测试从“自动化”向“智能化”的跃迁。
2025-12-25 17:55:23
391
原创 AI生成诱饵与XLL隐匿技术
报告称:“基于共享基础设施(如ruzeda[.]com域名)、诱饵文档构造的显著相似性,以及利用ADS的WINRAR漏洞攻击,我们将此活动归因于Paper Werewolf(即GOFFEE)威胁组织”。研究人员指出:“PDF由AI生成,包含多处明显矛盾”,包括拼写错误的俄语单词,以及国徽更像"扭曲的鸟类图案"而非官方双头鹰标志。2025年10月下旬检测到的此次攻击活动,标志着该组织战术的重大转变——将传统邮件诱饵与新型执行方法相结合,专门针对俄罗斯高科技与国防工业。但该组织的攻击手法存在明显破绽。
2025-12-24 19:39:45
537
原创 用提示词生成API接口测试计划的步骤
核心内容:必须包含测试目标、测试范围、测试环境(需含服务器 IP、端口号、数据库信息、测试工具)、测试策略(如功能测试、性能测试、安全性测试的具体策略)、测试用例设计、测试执行步骤、缺陷管理流程(含缺陷管理工具、缺陷严重程度划分标准、缺陷处理流程)、测试风险评估与应对措施、测试时间安排(需用表格形式,包含阶段名称、开始时间、结束时间、负责人)、测试人员分工。需覆盖接口的所有关键功能场景和异常场景,包括但不限于参数合法性、边界值、功能逻辑、异常处理、特殊场景(如分页参数异常、超时处理等)”。
2025-12-22 17:47:49
522
原创 评估与信任AI测试结果的4个指标
无论是AI识别UI异常、自动生成测试用例,还是做性能瓶颈分析,如果同样的输入在不同时间、不同环境下得出不同结果,那么再智能的系统也无法被信任。传统自动化测试的可靠性基于“脚本可重复性”与“结果确定性”;只有当AI的输出具备一致性、置信度、可解释性与验证性时,测试团队才能真正把AI的能力纳入质量保障体系中,而非将其视作一个“智能黑箱”。在未来的研发体系中,测试人员不再只是结果的验证者,而是AI测试系统的监督者与信任构建者。测试团队必须回答的,不再是“AI能不能测试”,而是“AI测试出的结论,能不能信”。
2025-12-11 16:23:20
1161
原创 质量保障追求敏捷与快速交付
但我们需要冷静地追问:这套日益复杂的体系,究竟是切实提升了软件交付的质量,还是仅仅创造了一种“我们已全力以赴”的集体心理安慰。例如,AI可以生成测试“用户修改头像”的脚本,但它无法理解这个功能在社交产品中对于用户身份认同的核心价值,从而设计出诸如“上传动态GIF头像是否会导致App卡顿”这类需要深度业务理解的场景。更糟糕的是,应急预案文档陈旧,团队仓促应对,扩大了事故影响。真正的质量提升,源于对软件研发全链路的系统性思考与优化,让测试手段回归其“风险揭示者”和“效率助推器”的本位,而非成为最后的“救世主”
2025-12-10 16:33:59
370
原创 nom单元测试与模糊测试实践
本文将带你掌握nom解析器框架的双重测试策略——单元测试与模糊测试,通过实战案例和最佳实践,让你的解析器代码更加健壮可靠。读完本文,你将能够搭建完整的测试体系,处理边界情况,生成抗攻击的解析器。作为开发者,我们应该借鉴nom的测试经验,将测试视为开发过程的有机组成部分,而不是事后添加的步骤。通过单元测试构建坚实基础,通过模糊测试探索边界情况,你的解析器将能够应对各种复杂场景,为用户提供可靠的服务。同时,独立的测试目录tests/包含了更复杂的集成测试,如JSON解析测试tests/json.rs。
2025-12-09 16:54:13
683
原创 Wireshark网络抓包工具
不管你是程序员、网络管理员,还是单纯的技术爱好者,学会用Wireshark绝对是个技能点满值的投资!想象一下,网络数据就像马路上川流不息的车辆,而Wireshark就是路边的监控摄像头,能记录每辆车的车牌号、行驶方向、载货情况…简单说,Wireshark就是个网络"窃听器"(当然是合法的那种)。它能捕获你电脑网卡上的所有数据包,然后以人类能理解的方式展示出来。从简单的抓包操作到复杂的协议分析,它能帮助我们深入理解网络世界的运作机制。记住,学会使用工具只是第一步,更重要的是理解网络协议的原理。
2025-12-09 15:57:58
1044
原创 python安装与环境配置
Python 是一种跨平台的高级编程语言,语法简洁、功能强大,广泛应用于 人工智能、数据分析、Web 开发、自动化脚本 等领域。在使用 Python 之前,需要正确安装并配置运行环境。如果显示版本号(如 Python 3.12.2),说明已安装,否则需要手动安装。2.VS Code —— 免费、插件丰富,适合学习与轻量开发。1.PyCharm —— 功能强大,适合专业开发。三、Windows 安装 Python。四、macOS 安装 Python。五、Linux 安装 Python。
2025-12-03 19:55:09
455
原创 JMeter动态签名接口性能测试
本文旨在系统性地解析这一技术难点,通过一个全新的实战案例,引导您从理解机制到熟练应用,最终能独立完成复杂签名接口的压力测试。本文旨在系统性地解析这一技术难点,通过一个全新的实战案例,引导您从理解机制到熟练应用,最终能独立完成复杂签名接口的压力测试。第二部分:实战演练——构建动态签名压测脚本我们以“查询产品详情”接口为例,演示在JMeter中实现动态签名的完整流程。第二部分:实战演练——构建动态签名压测脚本我们以“查询产品详情”接口为例,演示在JMeter中实现动态签名的完整流程。“请扮演一个性能测试专家。
2025-12-02 13:39:59
731
原创 AI测试的质量评估指标体系
人工智能系统正深刻改变世界,但其测试复杂性远超传统软件——模型的不确定性、数据依赖性、伦理隐忧都构成独特挑战。设计一套科学的质量评估指标体系(QAI)对准确衡量AI系统性能、驱动产品可信发展至关重要。集成数据采集(监控、日志)、计算框架(MLFlow、Weights & Biases)、可视化工具(Grafana)。推荐系统需强鲁棒性和公平性)。基于任务类型(分类、回归、生成、强化学习等)和核心关注点选择合适的量化指标。3. 维度复杂:需评估超越功能正确性的性能、公平、鲁棒性、可解释性等属性。
2025-11-20 14:47:03
535
转载 冒烟测试:程序员防“自燃“的第一道防火墙
本文将带你深入探索这个既有趣又至关重要的测试环节,从硬件起源到实际应用,从方法论到实战技巧,让你彻底搞懂如何防止你的代码"冒烟"。),就说明修理基本成功。想象一下,如果没有这道关卡,测试团队可能要花大量时间在根本无法正常运行的代码上,就像医生给一具尸体做全面体检——既浪费时间又毫无意义。就像硬件测试关注"是否冒烟"这个最基础指标一样,软件冒烟测试关注的是"能否正常运行"这个最基本要求。反例警示:某电商团队把商品搜索、下单、支付、退款全纳入冒烟测试,结果每次测试要2小时——这不是冒烟测试,这是慢性自杀!
2025-11-19 19:11:33
371
原创 AI在性能测试预测中的核心算法是什么?如何模拟真实用户负载模式?
基础特征:用户数量随时间的变化(如工作日 9 点、20 点为高峰)、请求类型占比(如电商中 “商品查询” 占 60%、“下单” 占 5%)、单次请求的参数分布(如查询关键词的频次)。行为序列特征:用户操作的时序依赖(如 “登录→搜索→加购” 的路径占比 70%,“直接访问商品页” 占 30%)、操作间隔(如浏览页面的平均停留时间 20 秒)。原理:通过 “智能体(Agent)” 与 “环境(系统)” 的交互(如调整负载大小、资源分配),学习 “最大化性能指标(如吞吐量)” 的策略,间接实现性能预测。
2025-11-18 17:24:50
310
原创 AI驱动的自愈合测试脚本如何应对UI微小变动?其技术实现路径是什么?
数据采集:通过录屏、截图工具收集 UI 界面在不同状态(正常显示、微小变动、极端场景)下的图像数据(含 PC 端、移动端、不同分辨率),并标注元素类型(如按钮、输入框、下拉菜单)、功能语义(如 “登录”“返回”)、结构关系(如 “子元素”“相邻元素”);语义特征:结合 OCR(文字识别)和 NLP(自然语言处理)理解元素的文字含义(如 “提交” 按钮改为 “确认提交”,语义仍为 “提交操作”),或通过元素标签(如button、input)的语义属性定位;
2025-11-18 17:22:21
338
原创 深入解析C++中的构造函数和析构函数
6)初始化对象的状态:构造函数可以设置对象的初始状态,例如设置指针成员变量为 null、设置计数器为 0 等。2)分配和初始化成员变量:构造函数可以分配并初始化类的成员变量,以便在对象创建时设置默认值或特定的初始状态。8)为派生类提供基类的初始化:在派生类的构造函数中,可以通过调用基类的构造函数来初始化继承自基类的成员变量。1)对象的初始化:构造函数用于初始化对象的成员变量,确保对象在创建时具有正确的初始状态。3)构造函数可以带有参数,在创建对象时,可以根据传递的参数值来初始化对象的成员变量。
2025-11-18 09:55:56
584
原创 Go语言Map并发安全解析与实战指南
Go语言以其强大的并发模型而闻名,但它的内置map类型在并发访问时却存在一些需要注意的安全隐患。Go的map底层使用哈希表实现,当执行写操作时,可能会触发哈希表的重新哈希过程,这个过程中map的内部结构会发生改变。Go语言的map在默认情况下不是线程安全的,这在并发编程中是一个重要的考虑因素。对于需要高并发访问的大型map,可以使用分片锁的策略,将map分成多个片段,每个片段有自己的锁,这样可以减少锁竞争。这种方法的优势在于,当不同的goroutine访问不同分片时,它们不会相互阻塞,从而提高了并发性能。
2025-11-18 09:50:35
438
原创 软件安全测试包括哪些内容?如何进行测试?
综上所述,软件安全测试是一个系统而全面的过程,要求测试人员具备扎实的安全知识、熟练的测试技巧以及对最新安全威胁的敏感度。软件安全测试首先进行的是漏洞扫描,利用自动化工具或人工方法,对软件进行全面扫描,寻找可能的安全弱点,如SQL注入、跨站脚本(XSS)、缓冲区溢出等常见漏洞。最终,编写详细的测试报告,总结测试过程、发现的问题、修复措施及建议,为软件开发团队和管理层提供决策依据。验证软件中的安全功能,如加密模块、访问控制机制、日志审计系统等,确保其按预期工作,提供有效的安全防护。二、如何进行软件安全测试?
2025-11-18 09:46:09
395
原创 浅谈selenium+webdriver爬虫技术
DOM是W3C指定的标准,如上图可以看到,DOM是由一个个的node(节点)组成。里面较常用的包括find_element_by_id 、find_element_by_xpath、ind_element_by_class_name 、find_element_by_css_selector这四种。图上看到节点之间有层级关系,如head和body为文档根节点的子节点,head标签内部的title则为其子节点,body内部的div为其子节点,下一级的a和button之间为兄弟节点,与div为父子关系。
2025-10-21 17:33:06
1645
原创 自动化测试框架TestNG
TestNG的官方网址: https://testng.org/doc/index.html。个人觉得学习一个新的框架,结合着官网的介绍更容易理解。由于我对java比较熟悉,所以就从TestNG框架开始学习自动化接口测试。和Junit相比,TestNG比较适合测试人员使用,因为。TestNG比Junit涵盖功能更全面的测试。Junit更适合隔离性比较强的单元测试。TestNG更适合复杂的集成测试。
2025-09-12 17:41:04
258
3
原创 Fiddler工具常用功能深度解析与实战应用
在测试RESTful API时,通过构造请求功能,修改请求方法(GET、POST、PUT、DELETE等)和请求体数据,验证API的各项功能。在测试Web应用的跨平台兼容性时,通过修改User-Agent,模拟不同浏览器(如Chrome、Firefox、Safari)和移动设备(如iPhone、Android)的访问,验证应用在不同环境下的显示效果和功能完整性。在测试电商网站的API接口时,通过HOST过滤功能,仅捕获与订单处理相关的API请求,忽略其他无关请求,提高测试效率。
2025-09-12 17:24:28
217
3
原创 HTTP的Web服务测试在Python中的实现
这些框架提供了丰富的测试功能,如测试套件的组织、测试用例的编写、断言的使用以及测试结果的报告等。通过将requests库与这些测试框架结合使用,开发者可以构建结构化的测试套件,对Web服务的各个接口进行全面测试。此外,Python的httpretty和responses等库也提供了模拟HTTP服务器的方法,允许开发者在本地环境中模拟Web服务的行为,从而进行更加灵活和可控的测试。通过合理使用这些工具和库,开发者可以构建全面、可靠和高效的测试套件,确保Web服务的稳定性和可靠性。
2025-09-12 17:19:15
343
2
原创 渗透测试成功的8个关键要素
至关重要的是,要明确测试的目标是评估整体安全状况,还是特定系统的安全性,以及是否需要将人为因素(例如对网络钓鱼和社会工程学攻击的敏感性)纳入测试范围。首先,从经济角度来看,测试费用会随着范围的扩大而增加,而测试成本与所需信息之间的不匹配可能会影响公司高层对未来的测试项目的支持。其次,测试范围过大时,测试结果可能会产生过多的信息,导致真正需要的数据被淹没在海量的测试结果中。因此,如果想要测试架构中特定部分的安全性,应将渗透测试的范围限定在该部分,而对整个系统的测试可以安排在后续进行。
2025-07-25 17:48:16
532
10
原创 Postman接口测试工具介绍
Postman以其强大的功能、简洁的界面和丰富的扩展性,成为了API测试领域的明星工具。Postman支持环境变量和全局变量,用户可以为不同环境(如开发、测试、生产)设置不同的参数,从而实现参数化请求。Postman支持插件和扩展,用户可以根据需要安装和使用各种插件,扩展Postman的功能。例如,Postman提供了丰富的API库,用户可以快速导入和测试常用的API。通过详细的文档记录API的请求方法、参数和响应格式,提高开发效率和接口使用的便利性。通过设置不同的请求参数和并发量,测试API的性能表现。
2025-07-18 17:19:18
358
10
原创 代码优化可以提升程序性能
运用对象池技术:生命周期长的对象拥有生命周期短的对象时容易引发内存泄漏,例如大集合对象拥有大数据量的业务对象的时候,可以考虑分块进行处理,然后解决一块释放一块的策略。例如,选择合适的编译选项,如使用 - O2、-O3 等参数,可以让编译器针对代码做一些自动优化,去除冗余代码、减少指令数、提高循环和函数调用的效率等,从而显著提升程序的运行速度。例如,避免频繁的内存分配和释放,对于需要频繁分配和释放内存的地方,可以考虑使用对象池或内存池来管理内存,减少系统调用的开销。例如,有狼、麻雀、小龙虾等生物启发式算法。
2025-07-14 17:55:00
396
3
原创 Python性能优化
技巧:Python 的内置函数(如 sum(), map(), filter(), sorted())和标准库中的模块(如 math, collections)通常是用 C 语言实现的,效率远高于等效的纯 Python 循环。技巧:避免在循环中使用 + 或 += 操作符连接大量字符串,因为字符串是不可变的,每次 + 都会创建新的字符串对象,导致 O(n^2) 的时间复杂度。优先考虑代码清晰度。· 集合 (Set): 适合快速成员查找、去重、集合运算(交、并、差),查找/添加/删除平均时间复杂度 O(1)。
2025-07-11 17:50:49
1394
原创 OpenVAS:开源漏洞扫描利器,守护网络安全的坚实护盾
OpenVAS(Open Vulnerability Assessment System)作为一款强大的开源漏洞扫描工具,以其广泛的漏洞检测能力、自动扫描功能以及丰富的插件和自定义选项,为网络安全防护提供了有力的支持。它通过对目标系统进行全面的扫描,识别潜在的安全风险,并提供详细的漏洞报告。扫描完成后,OpenVAS 会生成详细的漏洞报告,包括漏洞的类型、严重程度、影响范围以及修复建议等。在扫描过程中,它会将目标系统的特征与漏洞库中的信息进行匹配,以发现潜在的漏洞。
2025-07-08 16:51:15
607
springmvc增删改,分页,导入数据等功能
2016-03-08
浅谈性能测试中分析与调优过程的基本原则
2018-12-20
Android核心理念
2018-02-02
测试相关规范初版.docx
2019-05-31
Nessus使用及安装(包含安装包和安装说明)
2025-06-19
安全测试工具-WDScanner安装及部署文档,包含安装包
2025-05-27
性能测试并发数估算方法
2025-05-26
生成禅道系统任务报表(SQL)
2021-06-03
接口自动化平台完整代码。
2022-04-26
性能测试-Jmeter.pptx
2021-06-03
Web应用安全开发规范.doc
2021-04-30
name.jar jar包,放在jmeter/lib目录下。
2021-04-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅