自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 问答 (5)
  • 收藏
  • 关注

原创 项目介绍:“WeTalk”网页聊天室

项目介绍:WeTalk聊天室

2023-09-20 11:06:15 760 11

原创 测试开发探索:“WeTalk“网页聊天室的测试流程与自动化

在"WeTalk"项目中,我精心构建了测试开发体系,融合Selenium与JUnit进行集成测试,使用Postman实施接口测试。通过设计针对每个模块的测试用例,我验证了登录功能、消息传递等核心功能。这不仅有助于及早发现问题,提升测试效率,还确保了系统的稳定性。测试开发在现代软件开发中扮演至关重要的角色,为项目成功交付提供了坚实支持。展望未来,测试开发将继续与技术创新紧密融合,为软件质量和用户体验的不断提升贡献力量。

2023-08-13 23:16:22 3057 4

原创 在Linux系统中如何查询日志?

在工作中,我们有时候会定位问题,这时候就需要查询日志了,那么查询日志的命令有哪些呢?

2024-03-18 22:59:31 558 1

原创 自动化测试(终章)webdriver的常用api(2)以及新的开始

前面两章我们讲了一些元素定位方法和一些webdriver的常用api,今天这节我们来讲webdriver的另外一些常用的api,包括多层框架/窗口定位、层级定位、下拉框处理、alert、confirm、prompt 的处理、DIV对话框的处理、以及上传文件操作。🤷‍♀️selenium+python环境没有配置好的可以先看我上两篇配置环境噢。

2023-12-16 18:23:49 1109

原创 自动化测试(三)webdriver的常用api(1)

前面两章我们讲了selenium环境的配置和一些元素定位方法,今天这节我们来讲webdriver的一些常用的api,包括等待、打印信息、浏览器的操作、键盘事件、鼠标事件、以及定位一组元素的操作。🤷‍♀️selenium+python环境没有配置好的可以先看我上两篇配置环境噢。selenium环境配置:python环境配置:添加休眠非常简单,我们需要引入time包,就可以在脚本中自由的添加休眠时间了,这里的休眠指固定休眠通过添加方法就可以方便的实现智能等待;的用法比。

2023-12-16 12:00:00 992

原创 自动化测试(二)selenium八大获取元素方法及对象操作

上一篇主要讲解了自动化测试的环境。最后用IDE生成了一个样例。这节课将详细的介绍webdriver 的常用的API🤦‍♀️selenium+python环境没有配置好的可以先看我上两篇配置环境噢。selenium环境配置:防止乱码,在编辑器里面可以不用加,因为编辑器默认的就是UTF-8模式。导入webdriver工具包,这样就可以使用里面的API获得被控制浏览器的驱动,这里是获得Chrome的,当然还可以获得其他浏览器,不过要想使这一段代码有效,必须安装相应的浏览器驱动。

2023-12-15 16:33:23 3249

原创 自动化测试(一)配置selenium环境(带图文,防止踩坑)

上一章讲述了如何安装python环境,那么,这一章讲述的是,如何配置自动化测试(selenium)环境~吧🤷‍♀️。

2023-12-15 16:27:21 1686

原创 自动化测试(前奏)Python环境配置教程(带图文)

随着软件行业的快速发展,软件质量已经成为企业核心竞争力的重要组成部分。为了确保软件的质量和稳定性,测试工作变得越来越重要。然而,传统的测试方法往往需要大量的人力和时间,无法满足现代软件快速迭代的需求。因此,自动化测试成为了解决这一问题的关键。自动化测试是一种通过编写测试脚本或代码来自动执行测试用例的方法。它可以大大提高测试效率,减少人工操作,降低错误率,确保软件的质量和稳定性。同时,自动化测试还可以帮助企业快速响应市场需求,提高开发效率,降低成本。

2023-12-14 22:47:22 2125

原创 详解接口测试

在面向对象编程中,接口是一个抽象的概念,用于定义类应该具有的方法和属性。一个类可以实现一个或多个接口,并且必须实现接口中定义的所有方法和属性。通过实现接口,类能够表达自己具有某些功能或能力。比如:当我在手机上打开某个APP应用,点击应用里的某个按钮,一般就会调用某个接口,向服务端发起HTTP请求,接口返回数据后,我们就能在应用里看到相应结果。

2023-12-14 17:03:53 1086

原创 软件测试之 测试用例 如何设计

测试用例是一组详细说明,用于验证软件的特定功能、特性或场景是否按照预期运行。测试名称:描述测试的目的或要验证的功能。测试输入:指定输入数据、操作或条件,以便执行测试。预期输出:说明在给定输入或操作下,软件应该产生的预期结果。测试步骤:列出执行测试的具体步骤,包括操作和输入数据。测试环境:指定在哪种环境下执行测试,例如操作系统、浏览器、设备等。前置条件:描述在执行测试前需要满足的条件,如登录、数据准备等。后置条件:描述在测试执行后需要执行的清理操作,以确保环境处于初始状态。

2023-10-24 17:39:12 330 4

原创 创建线程的四种方法(Java)

在实现Callable接口后,需要使用ExecutorService来启动线程,ExecutorService.submit()方法可以启动Callable线程,并返回Future对象,可以使用该对象获取线程执行的结果。线程池是一种管理和复用线程的机制,它可以在应用程序中创建一组可重用线程,线程池中的线程可以重复使用,从而避免了频繁创建和销毁线程带来的性能问题。以继承的方式创建的线程可以使用当前类来获取线程的名称、状态、优先级等相关信息,因为其继承了Thread类的相关方法。

2023-10-19 11:47:19 185

原创 什么是测试流程?

测试流程是软件开发生命周期中的一个关键环节,旨在确保软件的质量、可靠性和性能。不同项目和组织可能根据需要调整和定制测试流程,以适应特定项目的要求。在整个测试流程中,记录和追踪问题非常重要,以便及时解决和持续改进软件质量。测试流程是指在软件开发中进行测试的一系列步骤和活动,目的是确保软件在发布之前质量和可靠性。

2023-10-18 17:20:42 411 1

原创 速通Redis基础(三):掌握Redis的列表类型和命令

Redis是一种高性能、开源的NoSQL数据库,以其支持多种数据类型而闻名。在前两篇博客中,我们介绍了Redis的字符串和哈希类型。今天,我们将深入研究Redis的另一种重要数据类型——列表(List)以及相关命令。

2023-10-11 14:36:07 251 8

原创 速通Redis基础(二):掌握Redis的哈希类型和命令

哈希类型是 Redis 的一种数据结构,它以键值对的方式存储多个字段和对应的值,每个字段都是一个字符串。哈希适用于存储具有多个属性的对象,例如用户信息、产品属性、配置参数等。哈希类型的键可以是字符串,但字段名必须是唯一的。在上面的例子中,我们创建了一个名为user:1的哈希类型,它包含了用户名、年龄和电子邮件地址这三个字段和对应的值。接下来,让我们了解一些常用的 Redis 哈希命令。

2023-10-10 22:02:40 539 1

原创 缓存雪崩、缓存穿透和缓存击穿产生的原因及解决方案

将缓存对象的过期时间分散开,避免同时失效,可以采用随机化的方式设置过期时间。在系统启动或低峰期,提前加载缓存数据,确保缓存中有足够的有效数据,以降低失效的概率。使用多级缓存,将缓存数据分为热数据和冷数据,热数据存储在高速缓存中,冷数据存储在低速缓存中,以减轻缓存雪崩的影响。将缓存数据分布在多个缓存节点上,通过分散请求负载来减少单个缓存节点的压力,提高系统的可用性和抗压能力。在缓存失效的情况下,通过设置熔断机制,直接返回默认值或错误信息,避免请求直接访问后端服务,减轻后端服务的压力。

2023-10-09 13:44:25 180

原创 速通Redis基础(一):掌握Redis的字符串类型和命令

Redis(Remote Dictionary Server)是一个高性能的开源键值存储系统,广泛用于构建快速、可扩展的应用程序。Redis提供了多种数据类型和丰富的命令集,使其成为一个强大的数据存储和缓存解决方案。

2023-10-06 14:40:08 412 10

原创 Java内存模型

Java内存模型(Java Memory Model,简称JMM)是一种抽象的概念,用于定义Java程序中多线程并发访问共享内存时的内存可见性、有序性和操作同步等行为。JMM规定了在多线程环境下,如何确保不同线程之间对共享变量的操作不会导致数据不一致性和意外的结果。Java内存模型是多线程编程的基础,它提供了一套规则和机制,确保了在多线程环境下的程序正确性和可预测性。我们可以使用这些概念和关键字来编写线程安全的Java程序,避免常见的并发问题,如竞态条件和数据不一致性。

2023-09-22 21:51:14 177 2

原创 Java面试题整理(带答案)

TCP和UDP的区别get和post的区别Cookie和session的区别Java的基本类型有哪些?抽象类和接口区别?对于堆栈的理解==和equals区别如何理解Java多态?创建线程都有哪些方式脏读、不可重复度、幻读都是什么?

2023-09-18 19:43:03 356 1

原创 常见的HTTP请求方式

HTTP(Hypertext Transfer Protocol)是一种用于传输数据的协议,它在互联网中扮演了至关重要的角色。HTTP请求方式定义了客户端与服务器之间的通信方式,使得我们可以向服务器请求资源或执行不同的操作。在本篇博客中,我们将介绍常见的HTTP请求方式,以便更好地理解它们的用途和特点。

2023-09-14 14:37:14 311 3

原创 理解网络通信的基础:OSI七层模型与TCP/IP五层模型

在今天的数字化世界中,网络通信已经成为我们日常生活和商业活动的重要组成部分。为了更好地理解和管理网络通信,网络工程师和管理员使用不同的模型来组织和解释网络协议和通信过程。本文将介绍两种最重要的网络模型:OSI七层模型和TCP/IP五层模型。

2023-09-11 19:25:22 1132 6

原创 Java中快速排序的优化技巧:随机取样、三数取中和插入排序

快速排序是一种高效的排序算法,通过选择基准元素,将数组分成两个子数组,并递归排序子数组,最终将它们合并。为了提高性能,可以采用随机取样、三数取中、插入排序等优化策略。

2023-09-10 15:14:16 1936 12

原创 MySQL的事务隔离级别

事务隔离级别是数据库中确保数据一致性和完整性的关键要素。从最宽松的"读未提交"到最严格的"串行化",每个隔离级别都有其独特的特点和优劣势。"读未提交"允许脏数据读取,但性能较高,适用于不要求数据完整性的场景。"读已提交"解决了脏读问题,但仍可能出现不可重复读。"可重复读"提供更高程度的隔离,避免了不可重复读问题,但仍可能发生幻读。而"串行化"则是最高级别,绝对确保数据的完整性,但可能带来性能开销。选择适当的隔离级别应根据应用需求权衡数据一致性与性能,确保数据库操作正确且数据完整。

2023-09-09 15:54:36 2103 8

原创 六大排序算法(Java版):从插入排序到快速排序(含图解)

插入排序:逐步构建有序序列,适用于小型数据集,时间复杂度为O(n^2)。希尔排序:改进的插入排序,通过分组排序提高效率,平均时间复杂度为O(nlogn)。选择排序:每轮选择最小元素并放在已排序部分的末尾,适用于小型数据集,时间复杂度为O(n^2)。冒泡排序:通过交换相邻元素将最大元素逐步移动到未排序部分的末尾,适用于小型数据集,时间复杂度为O(n^2)。堆排序:使用堆数据结构实现排序,时间复杂度为O(nlogn),适用于大型数据集。快速排序:分治排序算法,选择基准元素,将数据分为两个子数

2023-09-08 19:26:17 1363 9

原创 MySQL数据库的增删改查(进阶)

MySQL数据库管理不仅仅包括基本的增删改查操作,还涵盖了许多进阶主题,如约束、表的设计、聚合查询和联合查询。本文将深入探讨这些高级概念,帮助你更好地理解MySQL数据库。

2023-09-06 22:02:43 711 8

原创 MySQL数据库的增删改查(初阶)

MySQL数据库管理不仅包括基本的增删改查操作,还涉及多表查询和联合查询等高级技巧。本文将探讨MySQL数据库的各个方面,包括多表查询、联合查询以及一些常用的查询方法。

2023-09-06 16:33:52 257 1

原创 Selenium 3和JUnit 5中的显示等待与隐式等待

隐式等待 是一种全局性的等待设置,它适用于整个WebDriver实例的生命周期。它会设置一个全局的最大等待时间,当查找元素时,如果元素没有立即找到,WebDriver会等待指定的时间,然后继续执行后续操作。隐式等待不依赖于特定条件或元素,而只是在元素查找时等待一段时间。显示等待 是一种更灵活的等待机制,它允许你根据特定的条件等待元素或条件满足后再执行后续操作。显示等待需要明确地定义等待条件和等待时间,并且仅在等待条件满足或超时后才继续执行操作。显示等待是针对特定的元素或条件,可以根据需要在不同的地方使用

2023-09-06 12:36:04 1039

原创 基本的 Linux 命令以及 Linux 目录结构

Linux 是一种开源的操作系统内核,它的主要特点是免费、可定制和高度可配置。它是一个类 Unix 的操作系统,最早由芬兰的程序员 Linus Torvalds 在1991年开始开发,并迅速发展成为一个庞大的开源社区项目。开源性:Linux 是开源的,这意味着任何人都可以查看、修改和重新分发其源代码。这使得 Linux 受到了全球程序员社区的支持和贡献,以及成千上万的应用程序和工具的开发。多用户和多任务:Linux 是一个多用户和多任务操作系统。

2023-09-05 22:45:35 392

原创 深入探讨Java虚拟机(JVM):执行流程、内存管理和垃圾回收机制

万字长文深入剖析了Java虚拟机(JVM)的内部工作机制,包括执行流程、内存管理以及垃圾回收策略。通过对JVM运行时数据区、堆、栈、方法区等关键概念的详细探讨,读者将更深刻地理解JVM的运行机制。文章还介绍了类加载过程、双亲委派模型等关键主题,以及不同的垃圾回收算法,如标记-清除、复制、标记-整理和分代算法。希望能帮助到大家。

2023-09-03 21:41:09 1800 1

原创 深入理解Spring框架中的AOP、IoC和DI

Spring框架是一个功能强大且广泛使用的Java应用程序开发框架,它引入了多种关键概念和技术,其中包括AOP(面向切面编程)、IoC(控制反转)和DI(依赖注入)。本文将深入介绍这些概念,希望帮助大家更好地理解Spring框架的核心原理和用途~~😁。

2023-09-02 21:13:29 721

原创 Cookie与Session的区别及如何选择

Cookie是一小段文本信息,由服务器发送给浏览器并存储在用户设备上。这些文本信息通常包含用户的标识符、网站首选项或其他相关数据。

2023-09-02 16:35:05 1019

原创 教你手把手使用 MyBatis 框架

MyBatis 是一款款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 去除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

2023-06-27 20:26:59 362 1

原创 关于 SpringBoot 日志文件的知识

开发者自定义打印日志的实现步骤:1. 在程序中得到日志对象。2. 使用日志对象的相关语法输出要打印的内容。

2023-06-24 17:11:46 761

原创 SpringMVC 中的常用注解和用法

Spring Web MVC是基于Servlet API构建的原始Web框架,从一开始就包含在Spring框架中。正式名称“Spring Web MVC”来自其源模块(spring-webmvc)的名称,但更常见的名称是“Spring MVC”。从上述定义我们可以得出两个关键信息:1. Spring MVC 是⼀个 Web 框架。2. Spring MVC 是基于 Servlet API 构建的。

2023-06-23 20:26:09 1434

原创 SpringBoot 配置文件

1. 理论上讲 properties 可以和 yml 一起存在于一个项目当中,当 properties 和 yml 一起存在一个项目中时,如果配置文件中出现了同样的配置,比如 properties 和 yml 中都配置了“server.port”, 那么这个时候会以 properties 中的配置为主,也就是 .properties 配置文件的优先级最高,但加载 完 .properties 文件之后,也会加载 .yml 文件的配置信息。

2023-06-20 10:25:16 422

原创 SpringBoot的创建和使用

关于SpringBoot的创建和使用

2023-06-19 21:44:50 284

原创 Spring框架中 Bean 作用域和生命周期

详细介绍JavaSpring框架中 Bean 作用域和生命周期

2023-06-17 22:07:15 128

原创 详解 Spring 中如何更简单的读取和存储对象

本文主要讲Spring 中如何更简单的读取和存储对象,希望对大家有帮助!

2023-06-17 14:03:36 220

原创 Spring 的创建,使用和常见面试题

零基础理解Spring 的创建,使用,配置环境等,希望对大家有帮助

2023-06-16 17:32:44 106

原创 总结 HTTPS 的加密流程

关于HTTPS 的加密的一些小知识

2023-05-31 21:34:12 96

原创 HTTP 协议的基本格式和 fiddler 的用法

HTTP 协议的基本格式和 fiddler 的用法,简单易懂,希望对大家有帮助!

2023-05-20 12:03:58 121

空空如也

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

TA关注的人

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