自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java接口自动化测试之接口加密

在现代接口自动化测试中,经常会遇到需要处理加密数据的情况。开发团队通常会提供专门用于数据加解密的JAR包,这些JAR包包含了特定的加密算法实现。使用这些本地JAR包可以确保测试环境与生产环境的加密方式完全一致,避免因加解密不一致导致的测试失败。在接口测试中常用的加密算法包括:将加密JAR包添加到项目的类路径中:对于Maven项目,可以通过本地依赖方式添加:详细步骤说明:直接将JAR包放入项目的目录,并在IDE中配置类路径。2. 在测试中使用加密请求参数加密响应数据解密高级用法1. 自定义加密

2025-11-16 18:59:58 673

原创 Java Faker库详解

Java Faker是一个用于生成模拟测试数据的Java库,支持多种数据类型如姓名、地址、金融信息等。它提供简单的API生成随机但真实的测试数据,适用于单元测试、演示应用等场景。支持本地化配置并可扩展自定义数据生成器,通过Maven或Gradle轻松集成,但需注意其生成数据非真实且不保证唯一性。

2025-11-16 18:59:29 524

原创 Java自动化测试之数据库的操作

本文介绍了Java中使用JDBC进行数据库操作的完整流程。首先讲解了如何通过Maven配置MySQL、Oracle和PostgreSQL等数据库的驱动依赖。随后提供了一个封装常用数据库操作的JDBC工具类,包含获取连接、关闭资源、执行查询和更新等方法。最后通过具体示例演示了查询、插入、更新和删除等常见数据库操作,展示了工具类的实际应用。这些内容为Java开发者提供了数据库操作的标准化实现方案,可提高代码复用性和开发效率。

2025-10-25 23:20:32 294

原创 HeidiSQL的下载安装和使用

本文介绍了HeidiSQL的下载和使用方法:首先访问官网下载对应系统版本(推荐Windows便携版),下载后直接运行heidisql.exe即可启动。连接数据库时点击"新建"按钮,选择数据库类型并填写服务器信息(IP、端口、用户名和密码)后即可完成连接。整个过程无需安装,简单高效。

2025-10-25 23:20:04 814

原创 Java中数据驱动测试的多接口关联处理

本文介绍了接口测试框架中响应数据提取与环境变量管理的实现方案。在Excel测试数据中新增"提取响应"列存储JSON格式的提取规则,框架通过JsonPath从响应中提取数据并存入环境变量区。设计了基于HashMap的环境变量存储机制,支持变量引用替换功能,可识别{{XXX}}格式的变量并自动替换为实际值。同时支持通过配置文件自定义变量引用规则,适配不同风格的变量引用方式。该方案适用于多接口数据依赖场景,如登录-查询流程、订单创建-支付流程等,实现了测试数据在接口间的动态传递。

2025-10-11 22:42:06 545

原创 Java中第三方报告库-Allure

Allure是一个开源的轻量级测试报告框架,支持多种编程语言。它提供美观的可视化报告,包含执行趋势、通过率等图表,支持历史对比和附件添加。集成方式包括配置Maven依赖和Surefire插件,使用注解标记测试模块、步骤和严重级别。最佳实践建议合理分层、分解步骤和添加失败分析。常见问题包括中文乱码、报告生成失败等,可通过检查编码设置和插件配置解决。

2025-10-11 22:41:23 633

原创 Java自动化测试之断言

摘要:本文介绍了Java自动化测试中的断言机制,包括JUnit、Hamcrest和AssertJ三种常用断言方法的使用方式及特点。文章详细阐述了断言的最佳实践,如添加明确错误信息、避免过度断言、使用合适精度等,并提供了自定义断言的实现示例。最后通过用户注册功能测试场景,展示了断言在实际测试中的应用。合理使用断言能有效构建健壮、可维护的自动化测试套件,保障应用质量。

2025-10-08 18:02:04 255

原创 Java中第三方日志库-Log4J

Log4J是Apache开发的功能强大的Java日志记录工具,支持多级别日志记录和多种输出方式。通过配置文件可自定义日志格式、级别和输出目标(控制台、文件等)。使用步骤包括:引入依赖(Maven/Gradle)、配置log4j.properties文件、在代码中获取Logger实例并记录日志。Log4J适用于系统监控、错误追踪等场景,开发者应注意合理设置日志级别以平衡信息量与性能。

2025-10-08 18:01:33 570

原创 Java中通过.xml文件管理测试用例类

Java测试框架(如TestNG)通过XML文件配置测试用例,提供集中管理和灵活执行。XML支持定义测试类、包、方法及参数,可构建模块化测试套件并适配多环境。配置优势包括:统一管理测试类、环境隔离、并行控制等。典型用法包含类级(<class>)、包级(<package>)和方法级(<methods>)配置,支持参数化(<parameter>)和条件执行。可通过命令行、Maven或IDE执行XML配置,最佳实践建议分离测试类型、合理命名并维护配置。高级技巧包括X

2025-10-07 23:43:01 791

原创 Java自动化测试框架设计之代码分层

本文介绍了Java自动化测试框架的分层架构设计。基础分层包括页面对象层(封装UI元素)、业务逻辑层(组合操作流程)和测试用例层(定义测试场景)。扩展分层涵盖数据驱动层(管理测试数据)、工具层(提供通用功能)和配置管理层(系统参数配置)。高级分层涉及报告生成、异常处理和服务虚拟化。最佳实践强调单一职责、开闭原则等设计原则,规范层间通信方式,并建议通过定期评审和重构持续改进框架。

2025-10-07 23:42:15 1082

原创 基于TestNG框架的通用接口请求方法封装设计

本文介绍了基于Lombok、TestNG和RestAssured的接口自动化测试框架设计。通过Lombok简化POJO类开发,使用@DataProvider实现数据驱动测试,从Excel读取测试数据。核心是封装通用请求方法,支持多种HTTP请求类型,并处理JSON格式的请求头。框架实现了测试逻辑与数据的分离,通过修改Excel即可扩展测试场景,提升维护性和扩展性。RestAssured的链式调用配合日志输出,便于问题排查,为接口测试提供了高效解决方案。

2025-08-31 01:32:01 559

原创 数据驱动测试概述

数据驱动测试结合TestNG与EasyExcel实现高效自动化。TestNG的@DataProvider注解支持从外部数据源获取测试数据,实现数据与逻辑分离。EasyExcel作为Java Excel处理工具,可轻松读取Excel测试数据。通过定义数据模型、添加依赖和读取Excel数据,可构建完整的测试用例。高级应用包括多Sheet处理、动态数据过滤和大数据分块处理。最佳实践建议统一管理文件路径并创建数据转换工具类,提高测试代码的可维护性和扩展性。

2025-08-31 01:31:26 427

原创 REST-assured获取响应数据详解

REST-assured接口测试响应处理指南:详细介绍了如何获取响应状态码、时间和头信息,以及使用GPath解析器处理JSON/XML/HTML数据。内容包括响应对象提取方法、GPath语法详解(绝对路径、索引定位、条件筛选、属性选择)以及实用技巧,如getString()和findAll组合查询。通过代码示例展示了如何灵活提取嵌套数据和筛选特定条件的内容,适用于REST API测试中的各种响应解析场景。

2025-08-30 22:35:07 401

原创 REST-assured 接口测试编写指南

REST-assured是一个简化RESTful API测试的Java DSL库,提供流畅的API接口,支持JSON/XML响应验证。通过Maven配置依赖后,可编写简洁的测试代码:GET请求验证状态码和响应体字段,POST请求设置请求头和请求体。高级功能包括认证设置、JSON Schema验证和文件上传。最佳实践建议配置基础URL、启用日志记录、验证响应时间和使用JSONPath提取值。常见验证场景涵盖状态码、响应头、数组元素和响应时间等,能构建完整的API测试套件。

2025-08-30 22:34:06 383

原创 接口鉴权详解

本文介绍了接口鉴权的两种主要方式:Token鉴权和Cookie+Session鉴权。Token鉴权采用无状态的JWT方式,通过验证token实现跨域安全访问,适合现代前后端分离架构。Cookie+Session则是传统的有状态鉴权方式,依赖服务端存储会话信息,需注意CSRF防护。两种方案各有特点,开发者需根据实际应用场景和安全需求选择合适的鉴权机制。文章还简要说明了接口鉴权在防止未授权访问、保护数据安全等方面的重要性。

2025-08-24 18:00:27 656

原创 HTTP协议

HTTP协议是客户端与服务器通信的基础,包含请求和响应两大部分。请求由请求行、请求头、空行和请求体组成,支持GET、POST等主要方法。响应包括状态行、响应头和响应体,常见状态码如200(成功)、404(未找到)。关键请求头如Host、User-Agent等用于传递元数据,响应头如Content-Type定义返回内容格式。实际应用中需注意安全规范,如使用HTTPS、保护敏感数据。常用工具有Postman、cURL等,用于调试和发送HTTP请求。

2025-08-24 17:59:55 981

原创 接口测试详解

接口是不同系统或组件间交互的边界点,分为硬件接口(如USB、HDMI)和软件接口(如API、GUI)。接口测试验证系统间交互的正确性,具有早期发现问题、提高覆盖率、降低成本等优势。测试流程包括需求分析、用例设计、环境准备、测试执行等环节,能有效保障系统集成质量。接口测试比UI测试更高效稳定,适合自动化执行,是软件开发中不可或缺的重要环节。

2025-08-17 02:08:30 454

原创 TestNG测试框架详解

TestNG是一个功能强大的Java测试框架,支持单元测试、集成测试等多种测试场景。本文详细介绍了TestNG的核心功能,包括Maven依赖配置、常用注解(如@Test、@BeforeMethod等)、测试方法属性设置(超时、优先级)、内置报告查看方式以及丰富的断言方法。特别讲解了参数化测试的两种实现方式:通过testng.xml配置参数和使用DataProvider动态提供测试数据,并对比了它们的适用场景。TestNG还支持软断言、测试分组等高级特性,配合testng.xml配置文件可灵活管理测试套件,是

2025-08-17 02:06:59 1758

原创 Git常用命令详解

本文介绍了Git常用操作指南,包括:1)克隆远程仓库;2)查看和追踪文件变更;3)提交与推送代码;4)删除文件操作;5)分支管理(创建、切换、合并、删除本地/远程分支);6)拉取远程分支;7)版本控制(查看版本号、回退操作)。通过图文并茂的方式详细演示了每个命令的使用场景和效果,帮助开发者快速掌握版本控制的核心技能。

2025-08-03 20:20:00 763

原创 Git的安装和配置

本文介绍了Git分布式版本控制系统及其与SVN的对比,详细分析了三大Git托管平台(GitHub、GitLab、Gitee)的特点和区别。主要内容包括: Git核心特性:分布式架构、高效分支管理、数据完整性等 Git与SVN对比表格,展示架构、分支操作等关键差异 三大平台对比: GitHub:全球最大开源社区,适合跨国协作 GitLab:完整DevOps解决方案,支持自托管 Gitee:国内平台,访问速度快,符合中国法规 Gitee安装配置指南:从Git客户端安装到SSH密钥配置全流程 文章通过对比表格和分

2025-08-03 20:19:27 826

原创 Java中的抽象类和接口

摘要:Java中的抽象类和接口是两种重要的抽象机制。抽象类(abstract class)通过继承使用,可包含抽象方法和具体实现,适用于代码复用和模板设计。接口(interface)通过实现使用,定义行为规范,支持多重实现,从Java 8起可包含默认和静态方法。两者关键区别在于:抽象类侧重代码共享和部分实现,支持成员变量和构造方法;接口侧重行为契约定义,允许多重继承,仅含常量。选择时应根据需求决定:需要共享代码时用抽象类,定义规范时用接口。Java 8后两者功能有所融合,但设计目的不同。

2025-07-06 19:40:37 396

原创 Java中的访问修饰符和非访问修饰符

Java访问修饰符分为public、protected、默认和private四种,分别控制不同范围的访问权限。非访问修饰符包括static(类级别)、final(不可修改)、abstract(抽象)、synchronized(线程同步)、transient(不序列化)、volatile(线程可见)、native(本地方法)和strictfp(严格浮点)等,用于实现特殊功能需求。这些修饰符共同构成了Java的访问控制和功能扩展机制。

2025-07-06 19:17:59 457

原创 Java IO流 文件读写详解

Java IO流分为字符流和字节流,分别用于处理文本和二进制数据。字符流包括FileReader/Writer和BufferedReader/Writer等,能正确处理字符编码;字节流包含FileInputStream/OutputStream等,适合处理图片等非文本文件。选择原则:文本用字符流,二进制用字节流,大文件建议使用缓冲流提高性能。JDK7+推荐try-with-resources自动关闭资源,也可手动调用close()方法。

2025-06-29 19:41:33 351

原创 Java中对JSON的操作

JSON与Jackson技术解析摘要 JSON是一种轻量级数据交换格式,具有独立于语言、易读易写的特点,广泛应用于Web开发和API交互。其语法规则严格:键名需双引号、数据用逗号分隔、对象用{}、数组用[],且不支持注释。JSON支持字符串、数字、布尔值、null、对象和数组六种数据类型。 Jackson是Java生态中高效的JSON处理库,核心功能包括序列化(对象转JSON)和反序列化(JSON转对象)。使用步骤包括:添加依赖、创建JSON文件/实体类、通过ObjectMapper进行转换操作。Jacks

2025-06-29 19:41:11 2083

原创 Java中的异常及异常处理

文章摘要:Java异常机制提供了结构化处理运行时错误的方法。异常分为运行时异常(如NullPointerException)和编译时异常(如IOException),前者无需强制处理,后者必须捕获或声明。异常体系以Throwable为顶层,包含Error和Exception两大分支。处理异常主要使用try-catch-finally结构,可通过throw主动抛出异常,用throws声明可能抛出的异常。最佳实践包括:按具体到一般捕获异常、在finally释放资源、避免空catch块、合理使用日志记录等。异常处

2025-06-28 23:23:48 448

原创 Java 使用 Easy Excel 进行 Excel 数据导入导出

本文介绍了使用EasyExcel库进行Excel数据读写的方法。首先通过Maven添加依赖,然后创建映射Excel结构的实体类。读取Excel可采用基本读取或自定义监听器方式,处理数据更灵活。写入Excel支持基本写入和复杂样式设置。最后展示了批量导入数据到数据库的实际应用。EasyExcel简化了Java处理Excel的操作,适合各种数据导入导出场景。

2025-06-28 23:22:24 640

原创 Maven通过修改pom.xml配置文件下载指定依赖包,以及解决MVNRepository网站加载和验证问题的方法

点击该按钮,Maven将自动下载所需依赖包,此过程可能需要稍作等待。下载完成后,您可在项目的External Libraries目录中找到这些依赖包。POM(Project Object Model)是Maven的核心配置文件,pom.xml定义了项目构建所需的各种配置信息。这里的配置信息,需要打开https://mvnrepository.com/网址。选择想要的版本,最好不要用最新的,可以选择使用人数最多的。搜索需要的依赖包名称,如easyexcel。翻到页面下方,选中部分就是配置信息。

2025-06-22 16:30:05 908

原创 Java HashMap集合与集合嵌套

HashMap是Java集合框架中基于哈希表的键值对存储结构,具有键唯一性、无序性、非线程安全等特点。常用API包括put()添加数据、get()取值、remove()移除、keySet()获取键集合等。HashMap支持多种遍历方式和集合嵌套,如嵌套ArrayList实现班级-学生管理,嵌套HashMap存储学生成绩等。其高效的查找性能(O(1)时间复杂度)使其成为Java开发中最常用的集合类型之一。

2025-06-22 13:11:29 519

原创 Java ArrayList集合和HashSet集合详解

ArrayList和HashSet是Java集合框架中的两种实现。ArrayList是基于动态数组的有序列表,允许重复元素并保持插入顺序,适合频繁访问和有序存储。HashSet基于哈希表实现,保证元素唯一性但不维护顺序,适合快速查找和去重操作。两者都支持基本集合操作,但在性能特性上有显著差异:ArrayList通过索引高效访问,HashSet提供O(1)时间复杂度的查找。开发者应根据需求选择——需要有序和重复时用ArrayList,注重唯一性和快速查询则用HashSet。对于既要顺序又要唯一性的场景,可考虑

2025-06-21 23:35:30 568

原创 Java 包装类详解

Java包装类将8种基本数据类型封装为对象,包括Byte、Short、Integer等。主要用途包括使基本数据类型具有对象特征、用于集合框架和提供实用方法。装箱是将基本类型转为包装类对象,拆箱则相反。Java5引入自动装箱/拆箱特性,简化代码但需注意性能影响和缓存机制(如Integer缓存-128到127)。包装类提供类型转换、数值比较、最大值/最小值常量等实用方法。数值运算时通常需要先拆箱,也可直接使用包装类的sum()、max()等方法。

2025-06-21 23:34:44 416

原创 Java String类常用方法指南

Java String类提供了字符串处理的常用方法:比较(equals/equalsIgnoreCase)、拆分(split)、截取(substring)、替换(replace)、包含判断(contains)、开头结尾判断(startsWith/endsWith)、拼接(concat/+)、判空(isEmpty)、去空格(trim)、获取长度(length)、字符数组转换(toCharArray)、大小写转换(toUpperCase/toLowerCase)。注意==比较地址,equals比较内容,Stri

2025-06-15 18:02:04 362

原创 Java 面向对象编程三大特性之多态

摘要:Java多态是面向对象编程的三大特性之一,通过方法重载实现编译时多态(静态多态),通过方法重写和继承实现运行时多态(动态多态)。示例展示了父类Animal与子类Dog、Cat间的继承关系,以及通过父类引用调用子类方法的多态实现。多态优点包括增强可扩展性、代码复用、统一接口和降低耦合度,应用场景涵盖方法参数多态、集合框架、设计模式等。这种特性提高了程序灵活性,使代码更易维护和扩展。

2025-06-15 18:00:36 263

原创 Java 面向对象编程三大特性之继承

继承是面向对象编程的重要特性之一,它允许一个类(子类/派生类)继承另一个类(父类/基类)的属性和方法,并可以在其基础上进行扩展。继承实现了代码的重用和层次关系的建立,是"is-a"关系的体现。例如,"猫"类可以继承"动物"类,因为猫是一种动物。

2025-06-02 21:51:45 485

原创 Java 面向对象编程三大特性之封装

封装是面向对象编程的三大特性之一(其他两个是继承和多态),它是指将对象的状态(属性)和行为(方法)包装在一个单元中,并对外隐藏内部实现细节。在Java中,封装主要通过类来实现,通过访问控制修饰符来管理对类成员的访问权限。

2025-06-02 21:38:27 425

原创 Java 面向对象编程详解

本文介绍了Java中类与对象的基本概念及其组成。类是对现实事物的抽象,包含属性、方法、构造方法等组成部分;对象是类的具体实例,通过new关键字创建。重点讲解了构造方法的定义与分类,包括无参构造方法和带参构造方法的特点及使用场景,并提供了构造方法重载、this关键字应用、继承中的构造方法调用等实用指南。文中通过具体代码示例展示了如何定义和使用构造方法,以及对象属性访问的基本语法。

2025-05-25 23:58:18 571

原创 Java 局部变量与全局变量对比、作用与示例

本文对比了Java中的局部变量和全局变量。局部变量定义在方法或代码块内,作用域有限,需显式初始化,存储在栈内存;全局变量定义在类中,自动初始化,作用域覆盖整个类,存储在堆内存。关键区别包括:作用范围、初始化方式、存储位置和生命周期。实际应用中应优先使用局部变量,最小化全局变量使用,并注意命名规范和线程安全问题。典型场景包括方法内计算和对象属性存储。合理选择变量类型有助于提高代码效率和可维护性。

2025-05-25 17:42:11 687

原创 Java 自定义函数详解

本文系统介绍了Java自定义函数的定义与使用。主要内容包括:1)函数定义语法,涵盖访问修饰符、返回值类型、参数列表等核心要素;2)函数重载与可变参数的使用方法及注意事项;3)实际应用示例,如取余函数和计算器实现;4)编程最佳实践建议,强调单一职责、合理命名等原则。文章还简要提及Lambda表达式、递归等高级特性,帮助开发者编写结构清晰、可维护性高的代码。

2025-05-25 16:57:29 813

原创 Java for循环语句详解

本文介绍了Java中两种循环语句:普通for循环和增强for循环。普通for循环通过初始化、条件和迭代语句控制流程,适合常规循环场景;增强for循环语法简洁,专为遍历数组和集合设计。通过示例对比了两者的优缺点,并演示了循环嵌套在二维数组遍历和图形打印中的应用,以及循环与条件语句结合计算奇偶数和的实践。文章内容涵盖基础语法、执行流程和实际应用场景,适合Java初学者学习循环控制结构。

2025-05-24 23:58:11 875

原创 Java while循环语句,do while循环语句

本文介绍了Java中while和do-while循环的语法结构、执行流程及控制语句。while循环先判断条件后执行,最少执行0次;do-while循环先执行后判断,最少执行1次。两种循环都支持continue跳过和break终止控制,并提供了计算0-100累加和、控制数字输出的应用示例。文章对比了两种循环的执行流程差异,指出注意事项(如避免死循环)和常见错误(如漏加分号)。通过理解这些差异,开发者可以根据需求选择合适的循环结构编写高效代码。

2025-05-24 23:24:27 519

原创 Java switch语句

switch语句是一种多分支选择结构,用于根据特定值执行相应的代码块。其语法结构包括switch关键字后跟一个值,以及多个case分支和可选的default分支。当switch中的值与某个case匹配时,执行对应的语句块,并通过break语句结束;若所有case均不匹配,则执行default下的语句块。与if语句相比,switch虽然灵活性较低,但执行效率更高,适用于多分支选择场景。示例展示了如何使用switch语句处理自动售卖机的不同面值输入,并根据输入金额进行相应的找零操作。

2025-05-18 22:09:43 324

空空如也

空空如也

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

TA关注的人

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