- 博客(36)
- 收藏
- 关注
原创 shell脚本编程
Shell是一种脚本语言,又是一种命令语言。可以通俗一点来讲,Shell脚本就是一系列命令的集合,可以在Unix/linux上面直接使用,并且直接调用大量系统内部的功能来解释执行程序把一些重复性工作交给shell做,来实现自动化运维Shell 虽然没有C/C++、Java、Python等强大,但也支持了基本的编程元素。例如:if、for、while等循环,还有变量、数组、字符串、注释、加减乘除逻辑运算等。
2025-01-08 11:05:24
559
原创 自动化测试之Pytest框架(万字详解)
pytest 是一个功能强大且易于使用的Python测试框架,它允许开发者编写简单或复杂的函数式测试。pytest 的设计理念是让测试过程尽可能的简单和直观,同时提供丰富的插件生态系统来扩展其功能。易用性:pytest 不需要额外的导入语句来标记测试函数(如unittest中的test_前缀),你可以直接使用标准的断言语句(assert)来进行测试,这使得测试代码更加简洁、可读自动发现测试:pytest 能够自动找到并运行测试。
2024-12-29 21:33:36
2032
原创 使用pyenv切换不同的python版本
Pyenv是一个非常流行的Python版本管理工具,它允许开发者在同一台计算机上轻松安装和管理多个Python版本。
2024-12-07 23:38:38
1430
原创 python成长技能之多线程
在这个示例中,deposit 和 withdraw 方法都涉及对 balance 的读取和写入操作。如果两个线程同时执行这些方法,可能会导致竞态条件(race condition),从而产生错误的结果。线程安全性问题是多线程编程中常见的问题,当多个线程同时访问和修改共享资源时,可能会导致数据不一致、竞态条件等问题。锁(Lock):使用锁可以确保在同一时间只有一个线程可以执行关键代码段,从而避免竞态条件。with 语句:使用 with 语句可以简化锁的获取和释放,确保代码的可读性和安全性。
2024-11-18 22:15:53
1122
原创 python成长技能之正则表达式
在这个例子中,.* 是贪婪的,它会尽可能多地匹配字符,因此匹配结果是从第一个 < div>到最后一个< /div>之间的所有内容。re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。非贪婪匹配(也称为懒惰匹配)是指量词会尽可能少地匹配字符。默认情况下,大多数量词都是贪婪的,这意味着它们会尽可能多地匹配字符。如何在python中使用正则表达式----findall方法。在python中使用正则表达式----match方法。flags可选值如下。
2024-11-18 22:13:18
4654
1
原创 python成长技能之网络编程
Socket又称"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求,使主机间或者一台计算机上的进程间可以通讯一个生活中的场景。你要打电话给一个朋友,先拨号,朋友听到电话铃声后提起电话,这时你和你的朋友就建立起了连接,就可以讲话了。等交流结束,挂断电话结束此次交谈。生活中的场景就解释了这工作原理,也许TCP/IP协议族就是诞生于生活中,这也不一定在python里面,提供了两个级别访问的网络服务。
2024-11-13 22:16:37
1096
原创 python成长技能之枚举类
首先,你需要从enum模块中导入Enum类,然后继承Enum来定义自己的枚举类。每个枚举成员自动获得一个值,这个值通常是它们在类定义中的顺序RED = 1GREEN = 2BLUE = 3在这个例子中,ColorREDGREEN和BLUE,分别对应值1、2和3可以给枚举成员添加额外的方法或属性,以满足特定的需求FAILED = 3return "任务正在等待处理"return "任务已完成"else:return "任务失败"
2024-11-13 19:42:47
532
原创 Python进阶之IO操作
使用这种方法,确实可以进行文件的写入,但是每次打开之后,会发现原来所有的文本内容均被覆盖,如果想保留原来的内容,只是在文件的后追加内容,这个时候使用参数a,表示append,用于追加。同样的写入文件内容时,需要些使用open打开文件,相应的mode指定为可写入,之后可以使用write函数进行文件的写入。StringIo,BytesIo均属于io包下(3.7环境),均用于像操作文件一样,临时在内存中缓存文本,两者。每次打开文件完成相应操作之后,都必须关闭该文件,且因为文件在读写过程中可能出现IOError。
2024-11-06 21:43:24
353
原创 Jmeter5.X性能测试
浏览器请求方法http1.0定义了三种:GET: 向服务器获取资源,比如常见的查询请求POST: 向服务器提交数据而发送的请求Head: 和get类似,返回的响应中没有具体的内容,用于获取报头http1.1定义了六种PUT:一般是用于更新请求,比如更新个人信息、商品信息全量更新PATCH:PUT 方法的补充,更新指定资源的部分数据DELETE:用于删除指定的资源OPTIONS: 获取服务器支持的HTTP请求方法,服务器性能、跨域检查等。
2024-11-02 20:04:23
1136
原创 VMnet1和VMnet8丢失问题解决方法 绝对有用!!!
明明我在VMware中配置了网络在管理界面,输入ipconfig,没有看到vmnet1和vmnet8,在网络设置------》更改适配选项中也没有看到vmnet1和vmnet8,这时我又重新安装了vmware、重新配置虚拟网络、恢复网络配置等一系列操作,还是没有用。
2024-10-25 09:44:24
649
原创 MySQL基础快速复习及高级语法学习
什么是触发器?触发器就是监视某种情况,并触发某种操作创建触发器的语法:create trigger 触发器名称 after/before insert/update/delete on 表名beginsql语句;end删除触发器的语法:drop trigger 触发器名称;什么是存储过程?存储过程就是把复杂的一系列操作,封装成一个过程。类似于shell,python脚本等。存储过程的优缺点优点是:1)复杂操作,调用简单2)速度快缺点是:1)封装复杂2) 没有灵活性。
2024-10-24 20:58:31
1571
原创 使用Postman工具接口测试
HTTP:(HyperText Transfer Protocol)超文本传输协议,是一个基于请求与响应模式的、应用层的协议,也是互联网上应用最为广泛的一种网络协议特征:1. 支持客户端/服务器模式2. 简单快速3. 灵活4. 无连接5. 无状态什么是 postman 是一款非常流行的http接口测试工具Postman有两种种安装方式分别为:应用程序和浏览器插件postman下载postman下载地址jdk安装:jdk的简介win10怎么配置jdk变量。
2024-09-25 21:10:47
3458
原创 adb常用命令大全
ADB是Android Debug Bridge的缩写,它是一个命令行工具,主要用于在开发过程中实现计算机与Android设备之间的通信。ADB工具允许开发者执行一系列调试操作,如安装应用、管理应用的生命周期、读取日志数据、执行shell命令等。
2024-09-22 18:59:50
7878
原创 vscode提升使用体验(设置 | 插件 | 快捷键)
Chinese (Simplified) (简体中文)二、打开json文件设置。三、输入以下代码片段。
2024-09-21 18:05:57
1241
原创 Python实用技巧——python打包成exe文件
注意:在上面输入文件转换命令时,如果没有输入- -onefile,那么dist文件下就不止exe脚本,还会有其他文件。我们就可以使用pillow模块进行操作,如若我们不使用pillow模块,那么python只支持ico的文件。1、首先打开我们python文件的目录,然后输入cmd进入命令行界面。当我们不喜欢这个原始的图标的时候 我们就可以更改exe的图标。第三步:进入脚本对应的cmd命令行界面,再次输入命令打包。我们首先先准备一个需要转换为exe的文件。这样子,我们想要的exe文件就完成啦!
2024-06-16 22:44:01
733
原创 Android自动化测试之monkey命令使用和monkey脚本编写
monkey命令格式:adb shell monkey [options] [options]:这个是一个多选值,我们可以通过adb shell monkey -help来查看这个值有什么选项,或者打开monkey官网也可以查看到选项值:这是一个必须参数,这个参数表示我们monkey测试应该在这次测试中出现的数量,比如你设置这个参数是100,那么monkey就会随机产生100随机用户事件。
2024-05-20 15:36:26
3865
1
原创 自动化测试之————UnitTest框架
它提供了一些类和方法,用于组织测试用例、运行测试并获取结果,使用 unittest编写和运行测试用例可以帮助我们自动化测试过程,并确保代码的正确性和鲁棒性。它包括 setUp() 和 tearDown() 方法,在每个测试用例执行前后分别调用,用于设置和清理测试环境,以确保每个测试用例都在相同的环境中运行。当我们使用 HTMLTestRunner 生成 HTML 格式的测试报告时,需要下载 HTMLTestRunner 插件并导入它,然后通过创建测试套件并运行测试来生成测试报告。
2023-09-06 22:28:02
628
1
原创 新手快速掌握python基础与高级语法 ———— 一篇就够
变量名 = 数据值 # 可以理解为将 数据值 保存到 变量 中ege:name = '张三' # 定义一个变量名为name,存储的数据值就是为 张三if嵌套指的是在一个if语句的代码块内部再嵌套另一个或多个if语句。通过嵌套if语句,我们可以根据多个条件进行更复杂的判断和分支选择字符串可以用单引号 (‘’) 或双引号 (“”) 括起来定义定义元组:元组使用圆括号 ()来定义,其中的元素可以是任意类型,并且用逗号 , 分隔字典使用花括号 {}
2023-09-05 22:35:27
545
1
原创 MySQL新手快速入门
MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一1.SQL 是用于访问和处理数据库的标准的计算机语言。2.SQL指结构化查询语言,全称是 Structured Query Language。3.SQL 可以访问和处理数据库。
2023-07-02 15:07:33
386
1
原创 还不会使用VMware Workstation Pro 、Xshell 和 Xftp?手把手带你快速上手
VMware Workstation Pro是一款在Windows和Linux上运行的虚拟化软件,旨在帮助开发人员、测试人员和IT专业人员创建和运行多个虚拟操作系统,从而加快软件开发和测试流程,减少生产环境中的故障和风险使用VMware Workstation Pro,用户可以创建多个虚拟机实例,并在这些实例中安装不同的操作系统和应用程序。
2023-06-25 20:14:30
836
原创 Java之反射技术
Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法动态语言 vs 静态语言1、动态语言在运行时代码可以根据某些条件改变自身结构2、静态语言运行时结构不可变的语言就是静态语言反射机制能提供的功能①在运行时判断任意一个对象所属的类②在运行时构造任意一个类的对象③在运行时判断任意一个类所具有的成员变量和方法④在运行时获取泛型信息⑤在运行时调用任意一个对象的成员变量和方法。
2022-12-21 23:11:07
216
原创 Java之socket网络编程
网络编程的目的直接或间接地通过网络协议与其它计算机实现数据交换,进行通讯网络编程中有两个主要的问题①如何准确地定位网络上一台或多台主机;定位主机上的特定的应用②找到主机后如何可靠高效地进行数据传输① IP② 端口号。
2022-12-19 18:31:46
730
原创 Java之多线程(详细总结)
Java 给多线程编程提供了内置的支持。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。多线程是多任务的一种特别的形式,但多线程使用了更小的资源开销。
2022-12-16 18:07:45
880
原创 Java之IO流
字符流底层还是用的字节流,字符流仅仅做字符和字节的转换!接收一个字节流,生成的一个字符流。把字节流转换为字符流。3、向流中写入字节时,不会直接写到文件,先写到缓冲区中直到缓冲区写满,BufferedOutputStream才会把缓冲区中的数据一次性写到文件里。Unicode只是定义了一个庞大的、全球通用的字符集,并为每个字符规定了唯一确定的编号,具体存储成什么样的字节流,取决于字符编码方案。5、如果是带缓冲区的流对象的close()方法,不但会关闭流,还会在关闭流之前刷新缓冲区,关闭后不能再写出。
2022-12-09 20:47:11
418
原创 Java之集合万字详解
常用方法三、Collection 接口练习四、迭代器(Iterator)方法说明it.next()返回迭代器的下一个元素,并且更新迭代器的状态it.hasNext()用于检测集合中是否还有元素it.remove()将迭代器返回的元素删除4.1 foreach循环的使用五、泛型泛型标记符说明EElement (在集合中使用,因为集合中存放的是元素)TType(Java 类)
2022-12-05 21:39:47
146
原创 Java实现简易的学生管理系统
该项目主要是作为新手快速上手实操,围绕面向对象所学知识实现学生管理系统的增删改查功能,所使用的知识点主要是面向对象的三大特征使用的方法、判断语句、构造方法等知识点,代码量并不是很多,主要是考察我们在做项目会遇到的一些问题,我们会用什么样的方法去解决,以及提高我们的逻辑能力,从而为后面学习我们的集合、多线程、框架等打牢基础。
2022-11-27 10:00:00
2061
原创 《Java基础》从入门到放弃系列 万字超详
Java SE(Java Standard Edition,Java 标准版)是Java技术的核心和基础,是Java ME和Java EE编程的基础 [1] 。Java SE是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的Hot Java浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器均支持Java appletJDK下
2022-11-22 21:13:38
1234
1
原创 Linux新手快速入门(万字超详细)
Linux是一套免费使用和自由传播的类Unix操作系统,是一个POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统RPM 文件是类似于 ZIP 文件或 tarball 的存档文件
2022-08-06 16:05:01
11447
2
原创 javaScript基本语法
javaScript基本语法文章目录javaScript基本语法前言一、编写位置1.1 行内式1.2 内嵌式1.3 外链式二、输出语句三种方式2.1 alert()2.2 document.write()2.3 console.log()三、基本语法3.1 注释3.2 字面量和变量3.3 标识符前言JavaScript是一门解释型语言,所谓的解释性语言不需要被编译为机器码在执行,而是直接执行javaScript也是一门面向对象语言JavaScript主要是JavaScript用于响应用户
2022-08-02 22:02:34
596
原创 Java面试题:Singletion单例设计模式
1、认识Singleton2、要点3、常见形式3.1 直接实例化饿汉式3.2 枚举式3.3 静态代码块饿汉式3.4 线程不安全3.5 线程安全3.6 静态内部类形式4、总结
2022-07-04 23:16:53
186
原创 AJAX详解
上手Ajax文章目录上手Ajax一、认识Ajax1.1什么是Ajax1.2异步和同步的区别1.3Ajax的特点一、认识Ajax1.1什么是AjaxAjax全称为Asynchronous JavaScript And XMLAjax不是新的编程语言,而是一种将现有的标准组合在一起使用的新方式通过Ajax可以在浏览器中向服务器发送异步请求1.2异步和同步的区别异步请求:浏览器可以委托多个异步请求对象发送请求,无需等待请求处理完成浏览器委托异步请求对象工作期间,浏览器处于活跃状态
2022-05-11 18:06:24
608
原创 带你快速掌握CSS基础
文章目录一、CSS基本样式1.1样式规则与引入1.2基础选择器1.3字体样式1.4文本外观1.5CSS高级属性二、盒子模型2.1盒子模型的宽和高2.2为元素设置边框2.3内边距(padding)2.4外边距(margin)2.5默认样式2.6内联元素2.7元素的转换(display)2.8 box-shadow属性2.9 box-sizing属性三、浮动与定位3.1文档流3.2浮动(float)3.3定位(position)
2022-05-04 08:00:00
439
1
原创 带你快速掌握HTML
HTML基础前言这篇帖子主要是学习HTML和CSS实用的基本语法和使用方法了解HTML和CSS结构HTML用于描述页面的结构表现CSS用于控制页面中元素的样式行为JavaScript用于响应用户操作学习工具浏览器: 火狐、IE、Chrome编译器: HBuilder、VSscode、NotePad++(任选一个)调试工具:FireBug...
2022-05-03 08:00:00
957
原创 CSS3核心技术
CSS3核心技术前言一、过渡1.1认识过渡2.2过渡的属性二、变形2.1 2D变形(transform)2.2 3D变形三、动画3.1动画关键帧(@keyframes)3.2 关键帧的名字(animation-name)3.3 动画周期的时长(animation-duration)3.4 animation-timing-function属性3.5循环关键帧的次数(animation-iteration-count)3.6 执行动画效果延迟的时间(animation-delay)
2022-05-02 17:53:32
470
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人