自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Python Playwright追踪功能封装:打造高效、自动化的测试装饰器

Playwright是一个由Microsoft开发的强大且灵活的浏览器自动化库,它支持Chromium(Chrome)、Firefox和WebKit(Safari)等主流浏览器。Playwright允许您使用Python(以及其他编程语言)编写脚本,以模拟用户与网页的交互,实现自动化测试、数据抓取、UI验证等多种功能。

2024-06-21 18:44:46 852

原创 掌握Python Selenium:网页元素自动化定位实战指南

Selenium是一个用于自动化web应用程序测试的工具,它直接运行在浏览器中,就像真实用户在操作一样。这个框架支持多种浏览器(包括Chrome、Firefox、Safari等),并且可以在多种操作系统(Windows、Linux、macOS等)上运行。Selenium的主要目标是使自动化测试变得简单,以支持开发人员和测试人员快速编写测试用例。总之,Selenium是一个功能强大且易于使用的自动化测试框架,它支持跨浏览器和跨平台的测试,并提供了丰富的API和工具来帮助用户编写和执行自动化测试脚本。

2024-06-04 15:19:47 641 2

原创 消费中的幂等处理

指的是一种处理方式,使得对资源的多次请求或操作与单次请求或操作具有相同的效果。换句话说,执行多次操作与只执行一次操作的结果是一样的。幂等处理在分布式系统、网络请求、数据库操作等场景中非常重要,它有助于确保系统的健壮性和数据的一致性。幂等处理主要用于处理消息重复消费的问题。由于网络问题、消费者处理失败、消费者宕机等原因,消息队列中的消息可能会被重新投递给消费者,导致消费者重复消费同一条消息。为了避免这种情况导致的数据不一致或其他问题,消费者需要对消息进行幂等处理。

2024-06-03 17:41:52 636

原创 Python 编码规范

这份编码规范旨在提高 Python 代码的可读性和一致性。本规范基于 PEP 8,并结合了一些实际经验和最佳实践。

2024-05-29 18:20:12 864

原创 flask 实现接口权限管理

【代码】flask 实现接口权限管理。

2024-05-06 11:04:46 273

原创 Python 类继承原则

在Python中,类的类型取决于它们是如何定义的。在Python 2中,存在所谓的“经典类”和“新式类”的区分。但在Python 3中,所有的类都是新式类,经典类已经被移除。但为了理解这两者之间的区别,我们可以从Python 2的角度来讨论。在Python 2中,如果你直接定义一个类而不继承自任何其他类,那么这个类就是一个经典类。经典类使用深度优先搜索(DFS)来解决方法解析顺序(MRO, Method Resolution Order)。在Python 2中,如果一个类继承自object。

2024-04-26 17:52:21 663 2

原创 Python 单例模式

单例(Singleton)是一种设计模式,确保一个类只有一个实例,并提供一个全局访问点来获取这个唯一的实例。

2024-04-26 16:52:59 347 1

原创 HTML页面构成

HTML(HyperText Markup Language)是一种用于创建和组织网页内容的标记语言。它由一系列的元素(Elements)组成,每个元素都可以包含文本内容、图片、链接以及其他媒体类型。HTML 的主要作用是描述网页的结构和语义,并通过浏览器解释和呈现这些内容。HTML 中的元素通常由开始标签(Opening Tag)、结束标签(Closing Tag)、元素内容(Element Content)和属性(Attributes)组成。

2024-04-24 17:57:06 757

原创 Python-算法性能评估

基于我们前面的一个理论:在采用大 O 标记复杂度的时候,可以忽略系数,即 O(Cf(n)) = O(f(n))。如上一个函数,假设代码一行运行时间是一个unit,那么总的运行时间:T(n) = (2n + 1) * unit,T(n) = O(f(n)) , O表示 T(n) 与 f(n) 成正比,O 表示渐近时间复杂度,表示代码执行时间随数据规模增长的变化趋势。第一个循环时间复杂度O(999),第二个循环时间复杂度O(n),第三个循环时间复杂度O(n^2),所以这个函数的时间复杂度是O(n^2)

2023-07-27 13:00:02 248 1

原创 自动化框架pytest结合数据驱动

YAML(全称为"YAML Ain't Markup Language")是一种人类可读的数据序列化格式,它具有简洁、易读、易写的特点。YAML适用于配置文件、数据传输和表示复杂数据结构等场景。简洁易读:YAML使用缩进和空白行来组织数据,以使结构清晰可读键值对:使用冒号(:)来表示键值对关系#示例1age: 18相当于字典{'name':'jardon','age':18}数组:使用短横线(-)来表示一组相同类型的值。#示例2language:- python- java- go。

2023-06-29 18:24:01 395 1

原创 Python 数据类dataclass

dataclass 是dataclasses模块提供的一个装饰器,当一个普通的类被dataclass装饰时,这个普通的类将被赋予一些神奇的魔法,这对于我们处理数据是十分有帮助的。dataclass所装饰的类仍然属于面向对象范畴,它并没有发明新的轮子,而是对旧轮子进行了改造升级,让开发人员在处理数据时更便捷。dataclass优势可读性强操作灵活轻量应用场景创建对象完美融合平台开发 ORM 框架。

2023-06-13 23:01:31 420

原创 pytest测试框架

1. 支持Python标准库中unittest库的用例风格,同时也支持更为灵活的测试方法定义。2. 使用了丰富的插件机制,可以轻松扩展pytest的功能,如自定义测试收集规则、测试用例执行过程中灵活代理、运行过程中的动态配置等。3. 引入了Fixture机制,再次扩展了pytest框架的功能,Fixture可以理解为测试前提条件、测试数据、测试对象等,在运行测试之前进行准备和清理工作,支持Fixture的各个生命周期钩子函数,实现了依赖注入机制。

2023-06-09 17:26:42 258

原创 Python内置类装饰器

class关键字# 语法class 类名(父类名):"""类的帮助信息"""属性方法# 类的声明"""人类"""# 定义属性(类属性)message = "这是类属性"# 通过类访问类属性类的方法实例方法构造方法类方法静态方法构造方法作用:实例化对象def __init__(self, 参数列表)类名(参数列表)# 定义属性(类属性)message = "这是类属性"# 构造方法# 实例变量print("这是构造方法")# 实例化对象。

2023-06-02 17:18:18 85

原创 服务器资源采集

Linux的CPU使用率信息可以通过 /proc/stat 文件计算得到。/proc/stat 包含了所有CPU活动的信息,该文件中的所有值都是从系统启动开始累计的,单位为jiffiescpu一行指的是总的CPU信息,cpu0......cpu23几行指的是CPU各个核的CPU信息。从这里也可以看出这台服务器共有24个核。

2023-06-01 11:56:32 323

原创 git代码管理

模型类型不同:svn是集中式模型。:svn是集中式模型。:svn是集中式模型。:SVN按照原始文件存储,体积较大。SVN是按文件所有的资源控制系统都是把文件的元信息隐藏在一个类似.svn,.cvs等的文件夹里。:Git按照元数据方式存储,体积很小,GIT把内容按元数据方式存储,如果你把.git目录的体积大小跟.svn比较,你会发现它们差距很大。因为,.git目录是处于你的机器上的一个克隆版的版本库,它拥有中心版本库上所有的东西,例如标签,分支,版本记录等。

2023-05-30 12:11:45 299 1

原创 服务性能瓶颈定位过程

常见性能瓶颈、现象及解决方法常见性能瓶颈、现象及解决方法1、CPU瓶颈:现象:整机CPU或者单机能起到的最大个数的处理层进程CPU占用接近或者达到上限,整体CPU接近100%或者单机只能起60个处理层(快速工程化)、单机只能起10个处理层(GPU服务)的进程CPU占用都接近100%常见场景:通常是CPU计算密集型服务解决办法:此类通常已达到服务本身的性能上限,反馈开发即可,建议量级处理层单进程CPU75%~85%;想深入了解,可用perf。

2023-05-25 12:22:50 156 1

原创 linux常用的统计命令

uniq去重,只会对当前行前后进行对比,所以进行去重的话,首先需要进行排序,再进行去重。

2023-05-24 13:05:53 381 1

原创 Python装饰器

Python中的闭包(Closure)是指在函数内部定义的函数,并且该内部函数可以访问外部函数的作用域中定义的变量和参数,即使在外部函数返回后,内部函数也可以继续访问和更新这些变量和参数。闭包函数的作用是为Python中没有函数式编程能力的缺陷提供了一种变通的方式。在上面的示例中,我们定义了一个outer函数,该函数返回了一个内部函数inner。

2023-05-19 17:27:37 39

原创 Python中的深拷贝和浅拷贝

在Python中,拷贝是用于创建变量或对象副本的一种方式。深拷贝和浅拷贝是Python中两种不同的拷贝方式。它们之间的差异在于拷贝后的变量或对象副本与原始变量或对象的关系以及它们所占用的内存空间。

2023-05-19 17:06:10 934 1

原创 selenium工作原理

JSON Wire protocol是在http协议基础上,对http请求及响应的body部分的数据的进一步规范。body部分主要传送具体的数据,在WebDriver中这些数据都是以JSON的形式存在并进行传送的,这就是JSON Wire protocol。所以在Client和Server之间,只要是基于JSON Wire Protocol来传递数据,就与具体的脚本语言无关了,这样同一个浏览器的驱动就即可以处理Java语言的脚本,也可以处理Python语言的脚本了。

2023-05-19 13:29:38 229 1

原创 软件测试中建模语言UML

统一建模语言(Unified Modeling Language,UML)是一种为系统的产品进行说明、可视化和文档的一种标准语言,是非专利的第三代建模和规约语言。UML是面向对象设计的建模工具,独立于任何具体程序设计语言。

2023-05-17 12:36:04 146

原创 常用的测试平台

Testlink:流行的测试用例管理平台,体验不是很好。其它:tapd,云效,禅道,gitlab,在线协作文档。gitlab:可本地部署的git代码管理平台,行业标准。gitlab runner:gitlab持续交付方案。自建DevOps平台:企业定制平台,tapd,云效等。redmine:推荐方案,开源,活跃,定制性很强。subversion:SVN管理,已经过时了。Jenkins:持续集成与持续交付的主流平台。无协作模式:excel,思维导图。jira:推荐方案,定制性很强。

2023-05-12 22:20:53 225 1

原创 软件测试流程体系

系统测试:测试已经集合到一起的产品是否符合需求文档的要求。概要设计:系统架构,模块划分,模块与模块之间的接口。集成测试:测试各个模块组合在一起是否可以正常使用。单元测试:测试代码中最小模块是否符合详细设计。验收测试:测试产品是否符合用户的需求。详细设计:模块内部实现的逻辑和方法。编码:用代码实现设计的内容。

2023-05-12 13:14:01 138

原创 【软件开发流程】

软件开发流程中常用的模型主要有瀑布模型、迭代模型、增量模型、螺旋模型、敏捷模型、DevOps模型等,下面我将分别介绍这几种模型以及各自的优点和缺点。

2023-05-10 17:22:13 126 1

空空如也

空空如也

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

TA关注的人

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