自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 资源 (2)
  • 收藏
  • 关注

转载 maven学习(一)

​ Maven【[ˈmevən]】这个词可以翻译为"专家",“内行”。作为Apache组织中的一个颇为成功的开源项目,Maven主要服务于基于java平台的项目构建,依赖管理和项目信息管理。​ 无论是小型的开源类库项目,还是大型的企业级应用;无论是传统的瀑布式开发,还是流行的敏捷开发,Maven都能大显身手。

2023-10-06 19:50:08 129

转载 owner

owner介绍OWNER API是一个Java库,其目标是在应用程序中最大程度地减少properties文件处理所需代码。

2023-02-15 18:58:14 222

转载 python从零学习搭建测试平台(三)

自定义一个简单的web框架urls.py文件,路径和要执行的函数的对应关系import viewsurlpatterns = [ # ('/', views.html), # ('/xx.css', views.css), # ('/1.jpg', views.jpg), # ('/xx.js', views.js), # ('/person', views.person), ('/index', views.index),]views.py, 写逻辑def index():

2022-04-17 21:43:19 538

转载 wireshark抓包学习(二)

一、ISO五层模型Frame 125172: 物理层数据帧概况。Ethernet II, Src: 数据链路层以太网帧头部信息。Internet Protocol Version 4, Src: 互联网层IP包头部信息。Transmission Control Protocol, Src Port: 传输层数据段头部信息,此处是TCP协议。Hypertext Transfer Protocol:应用层信息,此处是HTTP协议。二、各层次分析1、物理层的数据帧概况(Frame)Frame 1

2022-04-17 20:40:41 2709 1

转载 python从零学习搭建测试平台(二)

了解CGI、WSGI上一篇已了解WSGI(1)CGI  CGI(Common Gateway Interface)通用网关接口,即接口协议,前端向服务器发送一个URL(携带请求类型、参数、cookie等信息)请求,服务器把这个请求的各种参数写进进程的环境变量,比如REQUEST_METHOD,PATH_INFO之类的,然后开启 cgi模块以后,将其发送给CGI程序,CGI程序(可以由各种语言编写,比如C、C ++、VB 和Delphi 等)从环境变量中解析出各种参数,然后向标准输出输出内容(比如co

2022-04-16 21:24:18 523

原创 python从零学习搭建测试平台(一)

web框架与web服务、web应用服务概念概念区分web服务器:负责处理htt请求,响应静态文件,常见的有 Apache, Nginx以及微软的IIs应用服务器:负责处理逻辑的服务器。比如php、 python的代码,是不能直接通过 nginx这种web服务器来处理的,只能通过应用服务器来处理,常见的应用服务器有中uwsgi、tomcat等。web应用框架:一般使用某种语言,封装了常用的web功能的框架就是web应用框架,flask、Django以及Java中的ssH( Structs2+ S

2022-04-16 18:43:53 3707

原创 python队列Queue的详解

Process之间有时需要通信,操作系统提供了很多机制来实现进程间的通信。1. Queue的使用可以使用multiprocessing模块的Queue实现多进程之间的数据传递,Queue本身是一个消息列队程序,首先用一个小实例来演示一下Queue的工作原理:#coding=utf-8from multiprocessing import Queueq=Queue(3) #初始化一个Queue对象,最多可接收三条put消息q.put("消息1") q.put("消息2")print(q.ful

2022-04-11 17:47:44 1234

转载 python 进程池pool使用详解

和选用线程池来关系多线程类似,当程序中设置到多进程编程时,Python 提供了更好的管理多个进程的方式,就是使用进程池。在利用 Python 进行系统管理的时候,特别是同时操作多个文件目录,或者远程控制多台主机,并行操作可以节约大量的时间。当被操作对象数目不大时,可以直接利用 multiprocessing 中的 Process 动态生成多个进程,十几个还好,但如果是上百个,上千个目标,手动的去限制进程数量却又太过繁琐,此时可以发挥进程池的功效。Pool可以提供指定数量的进程供用户调用,当有新的请求提

2022-04-11 15:14:05 11168 2

转载 python process模块的使用简介

process模块process模块是一个创建进程的模块,借助这个模块,就可以完成进程的创建。参数介绍:Process(group=None, target=None, name=None, args=(), kwargs={})'''1 group——参数未使用,值始终为None2 target——表示调用对象,即子进程要执行的任务3 args——表示调用对象的位置参数元组,args=(1,2,'egon',)4 kwargs——表示调用对象的字典,kwargs={'name':'egon

2022-04-11 14:08:56 2605

转载 深刻理解Python中的元类(metaclass)

一、理解类也是对象在理解元类之前,你需要先掌握Python中的类。Python中类的概念借鉴于Smalltalk,这显得有些奇特。在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段。在Python中这一点仍然成立:class ObjectCreator(object): passmy_object = ObjectCreator()print my_object#输出:<__main__.ObjectCreator object at 0x8974f2c>但是

2022-04-10 17:51:08 212

转载 HttpRunner3.x 详细学习笔记(二)

第 3 章 辅助函数(debugtalk.py)3.1 参数关联(extract)如何将上个登录接口的返回token,传给下个接口当做请求参数?参数关联场景:1.登录返回token -> 2.下个接口头部传tokenextract 提取变量$token 引用变量一般在提取变量后,需在 config 中 export 导出变量 导出变量的目的是,使他变成全局变量,方便后面步骤调用 (在一个 yml 用例 引用另外一个 yml 用例的时候用得到)3.2 环境变量 .env在自动化测

2021-11-25 18:45:07 758

转载 HttpRunner3.x 详细学习笔记(一)

初始化一个项目httprunner startproject xxxxx(项目名称)

2021-11-20 19:00:53 1285 5

原创 selenium 复用已有浏览器

Windows:右键谷歌浏览器,找到属性中的查到Chrome浏览器的地址,将其配置到环境变量中配置完成后,在DOS窗口输入start chrome打开Chrome浏览器正常即配置成功chrome --remote-debugging-port=9222Mac:关闭所有的Chrome浏览器窗口,直接执行以下命令即可,成功后,打开localhost:9222即可/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --re

2021-09-03 15:42:32 565 5

转载 linux上安装mysql5.7

在linux上安装mysql5.7一、安装1、更新yum本地缓存yum clean cacheyum makecache2、查看系统中是否已安装mysqlyum list installed | grep mysql3、卸载系统自带的mysql及其依赖(防止冲突)yum -y remove mysql-libs.x86_644、下载wget命令yum install wget -y5、给centos添加rpm源,并且选择比较新的源wget dev.mysql.com/get/

2021-09-02 09:40:36 1135

原创 selenium三种等待方式

为什么需要设置元素等待?因为,目前大多数Web应用程序都是使用Ajax和Javascript开发的;每次加载一个网页,就会加载各种HTML标签、JS文件但是,加载肯定有加载顺序,大型网站很难说一秒内就把所有东西加载出来,不仅如此,加载速度也受网络波动影响因此,当我们要在网页中做元素定位的时候,有可能我们打开了网页但元素未加载出来,这个时候就定位不到元素,就会报错所以,我们需要设置元素等待,意思就是:等待指定元素已被加载出来之后,我们才去定位该元素,就不会出现定位失败的现象了强制等待sleep()

2021-08-24 16:39:49 258

原创 git 重置用户名和密码

git config --global credential.helper osxkeychain然后再次输入用户名和密码再git clone 一下或者push就可以重新登录用户名和密码啦,或者授权

2021-08-24 10:18:49 993

原创 chromedriver for mac环境变量

chromedriver for mac环境变量首先下载 chromedriver网址如下:1.chrome历史浏览器下载地址:https://www.chromedownloads.net/2.chromedriver下载地址:http://chromedriver.storage.googleapis.com/index.html进入环境变量的目录cd /usr/local/binls2to3 pip3 python3-config2to3-3.9 pip3.9 pyth

2021-08-23 22:24:38 980 1

转载 python反射机制学习

反射机制1.什么是反射机制?反射就是通过字符串的形式,导入模块;通过字符串的形式,去模块寻找指定函数,并执行。利用字符串的形式去对象(模块)中操作(查找/获取/删除/添加)成员,一种基于字符串的事件驱动!2.举例介绍引入一个简单例子def f1(): print("f1是这个函数的名字!") s = "f1"print("%s是个字符串" % s)在上面的代码中,我们必须区分两个概念,f1和“f1"。前者是函数f1的函数名,后者只是一个叫”f1“的字符串,两者是不同的事物。我们可以用

2021-08-18 11:33:45 144

转载 windows安装npm教程--nodejs

1、在使用之前,先类掌握3个东西,明白它们是用来干什么的:npm: nodejs 下的包管理器。webpack: 它主要用途是通过CommonJS 的语法把所有浏览器端需要发布的静态资源作相应的准备,比如资源的合并和打包。vue-cli: 用户生成Vue工程模板。(帮你快速开始一个vue的项目,也就是给你一套vue的结构,包含基础的依赖库,只需要npm install 就可以安装。2、nodejs下载网址:https://nodejs.org/en/ 【如果嫌下载的慢,可以下载其他网站上的

2021-05-23 20:29:05 154

转载 appium Capabilities的各个标签

标签概述值automationName使用引擎默认为Appium,其中Appium、UiAutomator2、Selendroid、Espresso用于Android,XCUITest用于iOSplatformName操作系统如iOS、Android、FirefoxOSplatformVersion操作系统版本如7.1,4.4deviceName设备名如iPhone Simulator, iPad Simulator, iPhone Retina 4-...

2021-05-23 20:17:34 140

原创 Windows server 2012 R2 安装PostgreSQL

1、准备工作在Windows下安装部署用C开发的程序( postgresql是C语言开发的),都需要安装Microsoft Visual C++ 2015-2019 Redistributable安装Microsoft Visual C++ 2015-2019 参考:https://docs.microsoft.com/zh-cn/visualstudio/releases/2019/system-requirements首先,查看当前系统的更新历史,有更新。如果没有就需要安装Windows2

2021-03-28 18:29:53 3103 1

转载 在Spring中使用DButils

学习历程2020年的焦虑新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入2020年的焦虑从事测试7年,一直处在一个舒适区,2020年所在行业的衰败,被公司裁员,行业中所谓“年龄危机”,让我陷入一种焦虑中,发现不能再这样下

2021-02-13 22:18:05 229

转载 Windows10&windows server 2012r2作为slave 用jenkins部署微信小程序自动化打包

背景微信小程序的测试发布在没有 CI/CD 等相关工具的情况下,存在着如下的问题:小程序开发助手中,同一个开发者只能显示一个开发版本测试同事、产品经理、UI设计师找开发要二维码,或者本地拉取代码后使用开发者工具打开,不方便且效率较低本地生成的二维码会出现携带本地代码、未及时拉取分支其他改动等问题为了避免如上问题的发生,采用微信小程序集成 Jenkins 的方案。想达到一个效果,开发人员只管往前写代码,提交代码,修改bug。而测试人员就通过jenkins自动打包和部署进行测试开发人员所做的功能和回归

2021-01-18 17:00:20 943

原创 jmeter分布式压测环境配置

一、准备环境1、一台本地mac (master)2、一台云服务器(slave)3、master及slave的JDK环境均为:1.8版本4、master及slave的jmeter版本均为5.2.1二、(Linux)在线安装jdk以slave压力机的配置举例:执行下面的命令会将安装包下载到当前目录下wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie"

2020-12-12 16:20:30 550

转载 数据结构--链表(单链表、双向单链表、单向循环链表)

单向链表单向链表也叫单链表,是链表中最简单的一种形式,它的每个节点包含两个域,一个信息域(元素域 value)和一个链接域(或者称为指针域next)。这个链接指向链表中的下一个节点,而最后一个节点的链接域则指向一个空值。单向链表图示表元素域elem用来存放具体的数据。链接域next用来存放下一个节点的位置(python中的标识)变量p指向链表的头节点(首节点)的位置,从p出发能找到表中的任意节点。链表的基本元素有:节点:每个节点有两个部分,左边部分称为值域,用来存放用户数据;右边部分称为指针

2020-12-05 16:53:58 1035

转载 python中yield的用法详解

首先,如果你还没有对yield有个初步分认识,那么你先把yield看做“return”,这个是直观的,它首先是个return,普通的return是什么意思,就是在程序中返回某个值,返回之后程序就不再往下运行了。看做return之后再把它看做一个是生成器(generator)的一部分(带yield的函数才是真正的迭代器),如果一个函数有yield就不是一个函数了,使用函数名XXX()就不会调用这个函数,而是有一个返回一个对象。好了,如果你对这些不明白的话,那先把yield看做return,然后直接看下面的程序

2020-11-30 20:43:53 89

原创 安装docker

支持以下系统,参考https://docs.docker.com/engine/install/以CentOS上安装Docker-ce(社区版),Docker’s repositories方式安装为例(安装过程很多方法,但大同小异)PS:在新主机首次安装 Docker Engine-Community之前,需要设置Docker仓库,之后可以从仓库安装和更新 Docker。设置仓库,需要安装所需的软件包。yum-utils 提供了 yum-config-manager ,并且 device mapper

2020-11-02 13:34:37 111

原创 Appium日志分析

打开terminal进入一个路径(将日志文件存放的路径)appium -g 日志文件名称.log | 具体文件夹eg:appium -g appium2.log | logs运行测试脚本eg:ide的报错信息打开appium 搜集的日志文件第1行: 告诉了我们appium 的版本号第3行:该日志文件第4行:开通了一个本地的4723端口,用来监听客户端(我用的是python-appium-client)发来的请求在脚本中我用的是本地的服务,如果appium服务在其他服务器上,

2020-10-10 14:34:06 693

转载 Git分布式版本控制工具

Git分布式版本控制工具1. Git概述1.1 Git历史Git 诞生于一个极富纷争大举创新的年代。Linux 内核开源项目有着为数众多的参与者。 绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。 到 2002 年,整个项目组开始启用一个专有的分布式版本控制系统 BitKeeper 来管理和维护代码。到了 2005 年,开发 BitKeeper 的商业公司同 Linux 内核开源社区的合作关系结束,他们收回了 Linux 内核社区免费使用 Bit

2020-09-29 16:10:11 473

转载 Spring JdbcTemplate&声明式事务

JdbcTemplate基本使用01-JdbcTemplate基本使用-概述(了解)JdbcTemplate是spring框架中提供的一个对象,是对原始繁琐的Jdbc API对象的简单封装。spring框架为我们提供了很多的操作模板类。例如:操作关系型数据的JdbcTemplate和HibernateTemplate,操作nosql数据库的RedisTemplate,操作消息队列的JmsTemplate等等。02-JdbcTemplate基本使用-开发步骤(理解)①导入spring-jdbc和spr

2020-09-28 16:40:56 167

转载 spring的AOP

1.Spring 的 AOP 简介1.1 什么是 AOPAOP 为 Aspect Oriented Programming 的缩写,意思为面向切面编程,是通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP 是 OOP 的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。1.2 AOP 的作用及其优势作用:在程

2020-09-28 16:18:04 69

转载 SpringIoC和DI注解开发

1.Spring配置数据源1.1 数据源(连接池)的作用数据源(连接池)是提高程序性能如出现的事先实例化数据源,初始化部分连接资源使用连接资源时从数据源中获取使用完毕后将连接资源归还给数据源常见的数据源(连接池):DBCP、C3P0、BoneCP、Druid等开发步骤①导入数据源的坐标和数据库驱动坐标②创建数据源对象③设置数据源的基本连接数据④使用数据源获取连接资源和归还连接资源1.2 数据源的手动创建①导入c3p0和druid的坐标<!-- C3P0连接池 -->

2020-09-28 15:55:12 79

转载 01-SpringIoC&DI

1. spring概述1.1 Spring是什么Spring是分层的 Java SE/EE应用 full-stack 轻量级开源框架,以 IoC(Inverse Of Control:反转控制)和 AOP(Aspect Oriented Programming:面向切面编程)为内核。提供了展现层 SpringMVC和持久层 Spring JDBCTemplate以及业务层事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的Java EE 企业应用开源框架1.

2020-09-28 15:41:32 64

原创 Redis基础

第一章 Redis基础目标计划1. Redis 入 门(了解)(操作)2. 数据类型(重点)(操作)(理解)3. 常用指令(操作)4. Jedis(重点)(操作)5. 持 久 化(重点)(理解)6. 数据删除与淘汰策略(理解)7. 主从复制(重点)(操作)(理解)8. 哨 兵(重点)(操作)(理解)9. Cluster集群方案(重点)(操作)(理解)10. 企业级缓存解决方案(重点)

2020-09-28 13:50:03 205

转载 Vue和Element

1、Vue 快速入门1.1、Vue的介绍Vue是一套构建用户界面的渐进式前端框架。只关注视图层,并且非常容易学习,还可以很方便的与其它库或已有项目整合。通过尽可能简单的API来实现响应数据的绑定和组合的视图组件。特点易用:在有HTMLCSSJavaScript的基础上,快速上手。灵活:简单小巧的核心,渐进式技术栈,足以应付任何规模的应用。性能:20kbmin+gzip运行大小、超快虚拟DOM、最省心的优化。1.2、Vue的快速入门开发步骤下载和引入vue.js文件。编写入门

2020-09-27 17:40:44 996

转载 AJAX

1、Ajax快速入门1.1、AJAX介绍AJAX(Asynchronous JavaScript And XML):异步的 JavaScript 和 XML。本身不是一种新技术,而是多个技术综合。用于快速创建动态网页的技术。一般的网页如果需要更新内容,必需重新加载个页面。而 AJAX 通过浏览器与服务器进行少量数据交换,就可以使网页实现异步更新。也就是在不重新加载整个页 面的情况下,对网页的部分内容进行局部更新。​​1.2、原生JS实现AJAX代码实现impor

2020-09-24 22:39:56 92

转载 JavaScript高级

1、JavaScript面向对象1.1、面向对象介绍​ 在 JavaScript 中同样也有面向对象。思想与Java类似。1.2、类的定义和使用结构说明代码实现<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=

2020-09-24 21:32:45 108

转载 JavaScript基础

1、JavaScript快速入门1.1、JavaScript介绍JavaScript 是一种客户端脚本语言。运行在客户端浏览器中,每一个浏览器都具备解析 JavaScript 的引擎。脚本语言:不需要编译,就可以被浏览器直接解析执行了。核心功能就是增强用户和 HTML 页面的交互过程,让页面有一些动态效果。以此来增强用户的体验!1995 年,NetScape (网景)公司,开发的一门客户端脚本语言:LiveScript。后来,请来 SUN 公司的专家来 进行修改,后命名为:JavaS

2020-09-24 16:16:51 161

转载 Javaweb(九)mybatis

一.Mybatis注解开发单表操作1.1 MyBatis的常用注解Mybatis也可以使用注解开发方式,这样就可以减少编写Mapper映射文件了。先围绕一些基本的CRUD来学习,再练习复杂映射多表操作。@Insert:实现新增@Update:实现更新@Delete:实现删除@Select:实现查询@Result:实现结果集封装@Results:可以与@Result 一起使用,封装多个结果集@One:实现一对一结果集封装@Many:实现一对多结果集封装1.2 MyBatis的增删改查

2020-09-21 13:53:18 117

转载 JavaWeb(八)mybatis

一.接口代理方式实现Dao1.1 代理开发方式介绍​ 采用 Mybatis 的代理开发方式实现 DAO 层的开发,这种方式才是进入企业的主流。Mapper 接口开发方法只需要编写Mapper 接口(相当于Dao 接口),由Mybatis 框架根据接口定义创建接口的动态代理对象,代理对象的方法体同上边Dao接口实现类方法。Mapper 接口开发需要遵循以下规范:1) Mapper.xml文件中的namespace与mapper接口的全限定名相同2) Mapper接口方法名和Mapper.xml中定

2020-09-21 13:41:37 297

人工智能在测试领域的应用

包括chatGPT的基本原理与注册使用流程,实践记录与总结。autogpt的使用流程,Copilot的使用及注册流程。

2023-10-17

wireshark学习.pdf

wireshark学习.pdf

2021-11-28

JavaEE-api.chw

这是当.CHM的元件(编译的HTML帮助)文件被组合在一起产生一个类型的文件。它节省了合并后的TOC(目录表)和以及包括CHM文件的引用。

2020-07-08

空空如也

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

TA关注的人

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