- 博客(2134)
- 收藏
- 关注
原创 一文详解 requests 库中 json 参数和 data 参数的用法
摘要:requests库发送POST/PUT/DELETE请求时,针对不同请求体格式应使用不同参数:1) application/json格式使用json参数传入字典;2) application/x-www-form-urlencoded格式使用data参数;3) multipart/form格式需同时使用data和files参数;4) application/xml格式需将XML字符串通过data参数发送。文中还提供了Flask实现的XML接口示例,演示了XML请求和响应的处理方式。最后分享了软件测试学
2025-12-29 19:19:14
334
原创 Web自动化测试中的接口测试
本文系统介绍了Web接口测试的背景、方法和工具选型。首先阐述了Web应用的三层架构(表现层、业务逻辑层、数据访问层)和HTTP接口的概念。其次分析了接口测试的必要性,指出其相比UI测试具有成本低、稳定性高的优势,并提出了分层测试策略。最后对比了JUnit、HttpClient、HttpUnit、HtmlUnit和JWebUnit等主流测试工具的特点和适用场景,为接口自动化测试提供了实用指导。文章强调通过接口测试可以提前介入测试周期,提高测试效率,是Web应用测试的重要组成部分。
2025-12-29 14:16:04
323
原创 测试数据不会造?可以用这个工具Faker
文章介绍了测试数据构造的痛点及Faker库的应用。传统手动构造测试数据效率低、真实性差,而Faker库能生成逼真的模拟数据,支持300多种数据类型,包括姓名、手机号、信用卡等。文章详细说明了Faker的安装使用步骤,展示了生成中文通讯录和信用卡数据的示例,并介绍了自定义Provider的扩展方法。虽然Faker存在数据随机性强、数据量有限的缺点,但其本地化处理能力和开源特性使其成为测试数据生成的实用工具,特别适合Python新手学习使用。
2025-12-28 20:00:00
798
原创 Jmeter和Postman那个工具更适合做接口测试?
本文详细介绍了接口测试的关键要点,包括测试目的、常用请求方法、状态码解析、工具对比等核心内容。文章首先阐述了接口测试在敏捷开发中的重要性,接着讲解了GET/POST请求区别、HTTP状态码分类等基础知识。重点对比了Postman和JMeter两大工具在用例管理、断言实现、自动化支持等方面的差异,并通过实际案例演示了用户信息获取、文件上传等常见接口测试场景。最后强调选择合适的测试工具需根据具体场景,为测试人员提供了从入门到进阶的实用指导。
2025-12-27 19:25:36
377
原创 unittestreport 数据驱动 (DDT) 的实现源码解析
摘要:本文介绍了unittestreport模块中数据驱动(ddt)的实现原理和使用方法。通过装饰器@ddt和@list_data,可以将测试数据与用例逻辑分离,支持列表、json和yaml文件作为数据源。核心实现流程包括:1)将测试数据保存为方法的PARAMS属性;2)遍历测试类方法;3)为每条数据动态生成测试方法并添加到测试类。源码分析展示了_create_test_name和_update_func等关键方法的实现细节,通过动态创建测试方法实现数据驱动测试,提高代码复用性和可维护性。
2025-12-27 13:55:40
418
原创 企业级资源监控方案落地:Prometheus+Grafana+Export
本文介绍了基于Prometheus+Grafana+Exporter的服务器性能监控方案。方案包含三个核心组件:Grafana用于可视化展示监控数据,Prometheus作为时序数据库存储数据,各种Exporter负责采集服务器资源指标。文章详细说明了各组件的安装配置流程,包括Prometheus配置对接Exporter、Grafana集成Prometheus数据源等关键步骤,并提供了常见问题排查方法。该方案相比传统命令行监控工具更直观高效,通过更换不同Exporter可扩展监控多种服务,是性能测试中服务器
2025-12-26 14:16:59
752
原创 解决Selenium元素拖拽不生效Bug
摘要:针对Selenium的dragAndDrop()方法失效问题,文章分析了5种常见解决方案均无效的原因,指出是Webdriver的鼠标释放机制存在缺陷。最终提出通过JavaScript模拟拖拽的解决方案:Python可使用seletools包的drag_and_drop()方法,Java则需编写特定JS代码来替代原生拖放功能。作者解释该问题属Webdriver底层问题,Selenium官方不建议内置workaround,因此推荐使用第三方方案解决这个持续多年的拖放功能缺陷。
2025-12-25 19:24:21
776
原创 如何使用JMeter测试https请求
摘要:本文介绍了在JMeter中测试HTTPS请求时加载证书的完整步骤:1)从浏览器导出网站证书(.cer格式);2)使用keytool命令转换为.store格式;3)在JMeter的SSL管理器中导入证书。操作成功后即可正常测试HTTPS请求。文章还提供了软件测试学习资料获取方式,帮助测试人员提升技能。整个过程详细记录了证书处理的每个环节,为后续测试工作提供参考。
2025-12-25 14:12:01
309
原创 一文搞定Web 自动化之文件上传!
文章介绍了两种实现Web自动化文件上传的方法:1)当上传元素是input标签且type为file时,可直接使用Selenium的sendKeys方法输入文件路径;2)对于非input元素,推荐使用AutoIT工具操作Windows控件,详细说明了从下载安装到编写脚本、编译执行的完整流程。文章最后提供了软件测试学习资料获取方式,帮助读者提升自动化测试技能。
2025-12-24 19:25:15
761
原创 接口测试 —— 接口测试的意义
接口测试相比UI测试具有显著优势:1.更早发现问题,降低修复成本;2.缩短研发周期;3.能发现底层逻辑问题;4.有效检测服务器异常处理能力和安全性。UI测试虽能模拟用户行为,但维护成本高、稳定性差,而接口测试规则稳定、性价比高,更适合快速迭代的产品。接口测试重点关注服务端数据传递的正确性和完整性,是企业核心测试环节,通常不会外包给第三方。
2025-12-24 14:05:41
641
原创 selenium页面切换操作
摘要:Selenium页面切换分为iframe内嵌页面和窗口切换两种方式。iframe切换使用driver.switch_to.frame()进入框架,用driver.switch_to.default_content()返回主页面;窗口切换通过driver.window_handles获取句柄列表,用driver.switch_to.window()切换至指定窗口。操作完成后需手动切换回原窗口,不能使用default_content。文中提供了两种切换方式的代码示例,包括元素定位、页面切换和关闭窗口等操作
2025-12-23 19:31:19
269
原创 Python 实现常用的数据编码和对称加密
本文介绍了Python中常用的数据编码和加密方法,包括Base64编码、MD5哈希加密、DES对称加密、3DES加密和AES加密。通过具体代码示例展示了如何使用Python内置库(如base64、hashlib)和第三方库(如pyDes、Crypto)实现这些加密技术。文章重点讲解了各种加密方式的原理特点及实现步骤,为Python开发者提供了实用的加密解决方案参考。
2025-12-23 14:52:06
563
原创 jenkins中配置参数化,并在python脚本接收参数实现参数化执行
摘要:本文介绍了在Jenkins中集成Monkey测试脚本时处理不同APP参数的两种方法,重点推荐使用参数化构建方式。通过Python的argparse模块接收命令行参数,演示了如何配置Jenkins参数化构建过程,并说明在不同操作系统下获取参数的方法(Windows用"%参数%",Linux/Mac用"$参数")。文章最后分享了软件测试学习资料,旨在帮助测试人员提高效率。方法适用于需要灵活配置测试参数的持续集成场景。
2025-12-22 19:08:34
354
原创 接口测试中,请求超时该怎么办?
摘要:文章介绍了请求超时机制在接口测试中的应用,包括Python和Java两种实现方式。Python通过requests库的timeout参数设置超时(如0.1秒),Java则使用RestAssured配置连接、socket等超时参数(3000毫秒)。通过三个测试用例演示了设置超时的重要性:未设置超时会导致后续用例阻塞,而合理设置超时能确保测试流程正常执行。文末提供了软件测试学习资料获取方式,包含视频文档等资源。
2025-12-22 14:02:49
406
原创 手把手教你java+selenium数据驱动测试框架搭建与实践
本文介绍了一个基于Java+Selenium+TestNG+Excel的数据驱动测试框架实现,用于测试126邮箱的登录和添加联系人功能。主要内容包括: 框架设计:采用PageObject模式封装页面元素,使用Excel存储测试数据,实现测试代码与数据的分离。 关键实现: 通过ObjectMap类读取元素定位配置 封装登录和添加联系人操作模块 使用ExcelUtil类实现Excel数据读取和结果回写 通过TestNG的@DataProvider实现数据驱动 框架特点: 元素定位表达式与代码分离 支持多组测试数
2025-12-21 20:00:00
612
原创 接口测试及接口抓包常用的测试工具
摘要:接口测试是检测系统间交互点的测试方法,重点验证数据交换、异常处理和安全稳定性。常用抓包工具包括Fiddler、Charles等,其中Fiddler最受欢迎。主流测试工具有Postman(简单易用)和Jmeter(支持性能测试),推荐结合使用。进阶可选择Python自动化测试。本文还提供了软件测试学习资料,帮助测试人员提升技能。
2025-12-20 13:49:25
730
原创 python接口自动化 —— 发送get请求接口(详解)
Python接口测试首选Requests模块,相比内置urllib更简洁高效。Requests支持自动解码、连接池、Cookie会话等高级功能,可通过pip安装。使用示例包括发送GET请求(带/不带参数)、处理响应内容(text/content)、获取状态码等。关键方法:r.status_code查看状态码,r.text获取文本响应,r.content处理压缩内容,r.json()解析JSON数据。该模块极大简化了HTTP请求操作,是Python接口测试的必备工具。
2025-12-19 19:09:10
828
原创 如何读懂JMeter聚合报告参数?
摘要:本文介绍了JMeter性能测试中的关键参数配置和结果分析方法。主要包括线程组参数(线程数、Ramp-Up时间、循环次数)、聚合报告参数(响应时间、异常率、吞吐量等)的解释说明,以及压测结果分析要点(异常率、最大TPS、最大并发数判断)。同时介绍了循环控制器和If控制器的使用方式,强调在性能测试中需要关注服务器资源使用情况,并从数据库、应用程序等多个维度分析性能瓶颈。文章最后提供了软件测试学习资料的获取方式,帮助测试人员提升专业技能。
2025-12-19 14:01:44
497
原创 0代码实现接口自动化测试 —— RF框架实践
摘要:本文介绍使用RobotFramework实现接口自动化测试的方法。首先安装robotframework-requests库,创建测试集合并导入RequestsLibrary。文章详细讲解了GET、POST、PUT、DELETE等接口测试的实现,以及文件上传下载、签名验证、cookie/token关联等特殊场景处理。同时介绍了通过robotframework-datadriver实现数据驱动测试,包括测试数据准备、库导入和测试用例编写。最后提供了软件测试学习资料获取方式,帮助读者快速掌握接口自动化测试技
2025-12-18 19:12:51
885
原创 软件测试常用的7种方法,最后一个是升职加薪关键!(零基础小白转行IT互联网高效进阶)
摘要:软件测试方法主要分为黑盒测试(关注功能需求)、白盒测试(检查代码结构)和灰盒测试(两者结合)。静态测试不运行程序,通过代码审查发现缺陷;动态测试则执行程序验证功能。手工测试依赖人工执行,而自动化测试利用工具提高效率,但无法完全替代人工。测试方法的选择需根据项目需求,合理搭配使用才能保证测试质量。
2025-12-18 13:56:37
617
原创 解决appium ui自动化无法识别悬浮窗问题
本文分析了Appium框架无法定位悬浮窗元素的根本原因。通过对比ATX和Appium的UI2实现差异,发现Appium在获取窗口根节点时存在两个关键问题:1)选择性获取窗口而非全部窗口;2)使用缓存机制而非实时获取。解决方案是参考ATX的UI2实现修改Appium源码,最终成功解决了悬浮窗元素定位问题。文章还指出图像识别是另一种解决方案,但非本次讨论重点。最后作者分享了软件测试学习资料,旨在帮助测试人员提升技能。该案例展示了框架底层实现差异对自动化测试的影响,为解决类似问题提供了思路。
2025-12-17 19:07:34
345
原创 什么是边缘案例测试?如何查找并确定优先级
摘要:边缘情况指在极端条件下发生的非预期场景,对软件测试至关重要。文章详细阐述了边缘情况的概念、示例(用户错误、误用、依赖关系等)及其重要性,包括揭示系统缺陷、提升用户体验和保障关键行业安全。介绍了边缘测试的类型(输入、硬件、时序等)和方法(边界值分析、等价分区),并比较了手动与自动化测试的优缺点。强调发布前进行边缘测试的必要性,以及如何根据业务影响确定缺陷优先级。文章最后指出,尽管边缘情况罕见,但必须纳入质量保证计划,以防止潜在风险。(150字)
2025-12-17 13:43:56
748
原创 MySQL数据库时间计算的用法
摘要:本文介绍了MySQL内置函数在时间处理中的应用,包括时间戳与日期转换、日期加减计算和时间间隔计算。通过now()、unix_timestamp()、from_unixtime()等函数实现时间格式转换;使用date_add()和date_sub()进行日期加减运算;利用timestampdiff()计算时间间隔并转换为天/小时/分钟/秒格式。这些方法可帮助测试人员高效处理数据库中的时间数据,提升工作效率。文章还提供了完整的SQL示例代码,便于实际应用参考。
2025-12-16 19:38:02
898
原创 Appium混合页面点击方法tap的使用
摘要:在Appium自动化测试中,混合开发App的H5页面点击操作常遇到click失效问题。本文分析了该问题的根源在于H5页面采用tap替代click导致延时失效,并探索了三种解决方案:1)尝试原生tap方法但坐标系不匹配;2)使用Selenium的TouchActions.tap();3)最终通过添加perform()成功实现稳定点击。文章提供了完整的Python实现代码,分享了从定位问题到最终解决的完整思路,为测试人员处理类似问题提供了实用参考方案。(149字)
2025-12-16 14:00:35
709
原创 推荐一款新的自动化测试框架:DrissionPage
DrissionPage是一款创新的Python网页自动化工具,巧妙融合了浏览器操作与数据包请求功能。它通过自主研发内核实现了比Selenium更高效的操作方式,支持跨iframe元素查找、多标签页并行控制等特色功能,同时保留了类似requests的高效数据抓取能力。该工具提供简洁的API设计,支持模式自由切换,大幅提升了开发效率。安装简便,兼容主流Chromium浏览器,适合处理复杂网页场景。文档完善,是网页自动化和测试领域的实用解决方案。
2025-12-15 19:07:08
545
原创 史上最全的 iOS 各种测试工具集锦!
本文全面介绍了iOS应用测试的各类工具,涵盖自动化测试、性能测试和调试工具。重点解析了UIAutomation、XCTest、KIF等8种主流自动化测试框架的优缺点,推荐了Instruments等性能分析工具,并介绍了Xcode、iTunes等调试工具以及fir.im等内测平台。文章为iOS开发者提供了完整的测试工具链参考,帮助解决iOS系统封闭性带来的测试难题,提升应用测试效率和质量。
2025-12-15 14:06:01
496
原创 兼容性测试-Responsively App
本文介绍了响应式Web开发与测试工具ResponsivelyApp。该工具提供多设备同步预览、自定义布局、元素检查等功能,支持30多种内置设备配置和自定义设备添加,并能一键截图。文章详细展示了软件安装、多设备同步测试、视角切换、自定义设备添加及截图保存等操作流程,为开发者和测试人员提供了高效的兼容性测试解决方案。官网地址:https://responsively.app/,文末还提供了软件测试学习资料获取方式。
2025-12-14 20:00:00
295
原创 Appium自动化测试最佳实践
摘要 随着移动应用需求日益复杂化,传统手工测试面临巨大挑战,自动化测试成为行业趋势。Appium作为开源测试框架,支持iOS/Android/Windows应用的自动化测试,通过WebDriver协议实现元素定位和操作。测试过程建议采用Excel管理用例数据(含ID、标题、输入数据和预期结果),配合OpenPyXL进行读写操作,使用unittest框架进行断言验证。此外,API测试可借助Apifox工具实现,支持创建请求、编写断言脚本并验证响应结果。自动化测试能有效提升测试效率,保证产品质量,是应对复杂应用
2025-12-13 19:26:20
474
原创 Python - 操作windows程序窗口
本文介绍了Python库PyAutoIt的功能与使用方法。PyAutoIt是AutoIt v3工具的Python接口,可通过模拟鼠标、键盘操作Windows窗口控件。文章详细说明了安装方法(pip install pyautoit)和常用函数,包括窗口操作(如运行/关闭程序)、窗口状态检查、控件操作(输入文本、点击)以及鼠标键盘模拟操作。最后提供了软件测试学习资料获取方式,帮助读者快速掌握自动化测试技能。该工具适用于Windows程序自动化测试场景。
2025-12-13 14:15:03
881
原创 Python自动化测试之——测试数据准备
本文介绍了使用Pytest框架进行自动化测试数据准备的方法。重点讲解了两种主要实现方式:通过pytest.fixture装饰器定义数据准备函数,以及使用conftest.py文件实现全局数据共享。文章以登录功能测试为例,展示了如何通过fixture准备用户登录数据并在测试用例中使用。这些方法能有效管理测试数据,提高测试的可重复性和可维护性。作者建议根据实际项目需求选择合适的数据准备方式,并提供了进一步学习交流的途径。
2025-12-12 19:08:44
623
原创 接口自动化测试框架:SoapUI
SoapUI是一款流行的Web服务测试工具,支持SOAP和RESTful接口测试。它具有易用性、功能强大、自动化支持等特点,提供详细报告分析功能,且开源灵活。企业常用于接口测试、监控、安全测试、性能测试等场景。文章还通过一个REST接口测试案例演示了基本操作流程,并建议结合Selenium、Jenkins等工具构建完整测试框架。最后提供了软件测试学习资料获取方式。
2025-12-12 13:57:26
434
原创 Jmeter 性能-内存溢出问题定位分析
本文总结了四种常见的JVM内存溢出问题及解决方法:1)堆内存溢出可通过jmap分析对象或调整JVM参数;2)栈内存溢出需增大xss参数或减少批处理数据量;3)持久代溢出需调大MaxPermSize并减少静态变量;4)线程/数据库死锁需通过jstack或日志分析阻塞情况并优化代码/SQL。文章最后提供了软件测试学习资料获取方式,帮助开发者快速定位和解决内存问题。
2025-12-11 19:32:30
406
原创 Pytest参数详解 — 基于命令行模式
本文介绍了pytest测试框架的12个常用命令行参数功能:1)--collect-only查看可执行测试用例;2)-k通过表达式筛选用例;3)-m按标记分组运行;4)-x遇到失败立即停止;5)--maxfail设置最大失败次数;6)-s关闭输出捕获;7)-l显示失败时的局部变量;8)--lf/--ff重跑失败用例;9)-v详细输出模式;10)-q简化输出;11)--tb设置错误回溯格式;12)--duration分析测试耗时瓶颈。这些参数能有效提升测试效率和调试体验,帮助开发者快速定位问题。
2025-12-11 14:16:00
700
原创 接口自动化测试工具,Postman使用详解
Postman是一款功能强大的API测试工具,支持HTTP请求调试、变量管理、断言测试等功能。文章介绍了Postman的基础使用流程,包括接口请求方式(GET/POST)、环境变量设置、沙箱测试脚本编写以及JSON断言方法。同时详细讲解了如何通过测试集管理用例、使用CSV/JSON文件实现数据驱动测试,以及如何利用Newman工具进行持续集成测试,包括命令行执行、报告生成和Jenkins集成。最后还提供了测试资料获取方式,帮助测试人员系统学习Postman的使用技巧。
2025-12-10 19:28:34
1003
原创 软件测试人员在工作中如何运用Linux
摘要:软件测试人员掌握Linux基本命令对工作至关重要,主要用于环境搭建、日志查看和文件修改。常用命令包括vi/vim(修改文件)、less(分页查看日志)、tail(动态查看日志)和grep(搜索日志内容)。环境搭建涉及文件传输和权限管理命令,日志查看用于定位bug,文件修改则通过vi编辑器完成。测试人员无需精通所有Linux命令,只需掌握常用命令即可满足工作需求。随着自动化部署工具的普及,手工操作逐渐减少,但基础Linux技能仍是测试人员必备能力。
2025-12-10 13:48:50
892
原创 【Selenium+python】自动化测试登录界面
本文分享了使用Selenium进行UI自动化测试的实践案例。作者通过一个网站登录功能测试,回顾了自动化测试知识,包含5个测试用例:成功登录、空输入、仅输入手机号、仅输入密码、错误账号密码等情况。文章详细展示了测试代码实现,包括元素定位、测试用例编写和断言验证,使用unittest框架组织测试,并封装了基础操作方法。测试结果验证了各种登录场景的正确性,为初学者提供了完整的UI自动化测试示例。最后作者表示愿意分享更多测试学习资料,帮助测试新人快速成长。全文以实际项目为背景,展示了从用例分析到代码实现的全过程。
2025-12-09 19:20:50
249
原创 一文5000字从0到1使用Jmeter实现轻量级的接口自动化测试(图文并茂)
本文介绍了使用JMeter实现轻量级接口自动化测试的方法。主要内容包括:1)通过JMeter发送HTTP请求并管理请求头;2)使用CSV数据配置实现参数化;3)利用JSON Extractor插件处理JSON响应;4)通过JDBC连接MySQL数据库进行数据验证;5)使用响应断言验证测试结果。文章以商品查询接口为例,详细演示了从接口调用到结果验证的完整流程,展示了JMeter在不强开发能力的小团队中实现低成本高收益接口自动化的可行性。这种方案适合作为轻量级接口自动化测试框架的实现手段。
2025-12-09 14:06:06
597
原创 MySQL数据库远程访问权限设置
摘要:本文介绍MySQL数据库远程访问权限设置的两种方法。一是通过修改mysql.user表直接更新root用户的主机访问权限或新增指定IP用户;二是通过授权命令创建用户并分配权限,包括针对MySQL 8.0版本的特殊处理。文章详细说明了具体SQL操作步骤,包括修改加密规则、重置密码等注意事项,最后提供了flush privileges刷新权限的提示。适合需要配置MySQL远程访问权限的开发者参考。
2025-12-08 19:18:18
803
原创 简明 FastAPI 并发请求指南
FastAPI框架凭借其高效异步特性,成为处理并发请求的理想选择。本文通过实例演示了如何使用FastAPI和asyncio实现并行任务处理:创建5个模拟任务,利用asyncio.gather()实现同步等待,最终聚合返回结果。文章还介绍了使用uvicorn运行服务和使用Apifox调试接口的方法。这种并发处理方式显著提升了Web应用的响应速度和实时处理能力,展现了FastAPI在现代Web开发中的优势,特别适合需要高并发的应用场景。
2025-12-08 14:08:49
796
原创 10大主流压力/负载/性能测试工具推荐
本文系统介绍了互联网产品压力/负载/性能测试的必要性及常用工具。首先辨析了三者的区别:压力测试检测系统极限性能,负载测试验证最大工作量下的运行能力,性能测试建立基准数据排除瓶颈。随后推荐了10款主流测试工具,包括开源的JMeter、商用的LoadRunner、云端的阿里云PTS和压测宝等,分析了它们的特点和适用场景。文章指出,随着技术发展,测试工具已从传统内网压测演进到云端分布式测试,新一代产品如压测宝能更精准定位性能问题。这些工具可帮助企业在产品上线前发现潜在性能瓶颈,提升用户体验。
2025-12-07 20:00:00
742
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅