自定义博客皮肤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)
  • 收藏
  • 关注

原创 Typescript+Detox+Cucumber自动化测试RN App

一、配置环境二、

2024-04-08 00:15:24 394

原创 初次使用Python+unitest+selenium环境配置

pyhton+unitest+selenium环境初级搭建

2024-04-07 23:53:11 863

原创 fiddler使用详细教程

fiddler了解一、电脑pc安装下载配置:1、原理:是一个http协议的代理2、使用:(1) 安装 fiddler.exe(2) pc端(或者移动端),设置开启代理127.0.0.1:8888(其实打开fiddler会自动开启)(3) fiddler设置抓https:options–https–勾选前三个(表示忽略服务证书)(3) fiddler 设置抓取请求类型:filters—选择 show only the following host(4) 工具栏点击 ????inspectors,

2021-06-21 17:27:49 7250 1

原创 API测试之postman

如下:请求前的脚本函数,主要是对(全局变量、环境变量)的设置、查询、删除,还有一个方法是查询变量、发送请求。总共8个var host = pm.variable.get("host"); // 获取环境变量host的值// 1、轮巡响应列表for (var i = 0; i <pm.response.json().retlist.length; i++) { // 2、取出每条元素的id var listID = pm.response.json().retlist[..

2021-04-09 11:30:21 224

原创 python远程操作linux

1、python如果要操作linux,则需要依赖一个服务:SSH,paramiko库能实现这个服务2、安装paramiko库:3、创建ssh对象——设置连接方式——发起对linux的连接——执行命令并接收——关闭连接如何从远程linux下载文件到本地:需要创建一个满足文件操作的实例化对象sftp = ssh.open_sftp()下载到本地sftp.get(“Linux上的文件路径”, “本地存储的路径”)上传到远程sftp.put( “本地存储的路径”, “Linux上的文件路径”)

2021-04-08 15:11:28 372

原创 python高阶之socket编程

注意点:字符串不能直接在网络当中进行传输,所以接收的字符串需要 使用decode(“utf8”)解码,发送的字符需要encode(“utf8”)编码成byte字节才能发出去数据传输编码解码理解粘包: 客户端两次发送的数据小于1024个字节,被服务端一次性接收客户端上传文件代码如下:import socket, os# 1、创建socket 对象sk = socket.socket()# 2、连接一个服务器sk.connect(("127.0.0.1", 13001))# 定义一个..

2021-04-07 18:49:36 256 3

原创 python进阶笔记之多线程

1、了解并发一个cpu 执行一个a线程,然后执行一个b线程,然后执行一个c线程,当切换执行的速度非常快时,可以看作是三个线程是一起执行的(类似于一只手快速来回晃动,可以看到很多只手,其实只要一只手,速度足够快,看成了多只手同时存在了)并发:逻辑上具备同时处理多个任务的能力并行:物理上在同一时刻执行多个并发任务2、join:等待子线程------指得是,在并发子线程和主线程同时运行时,两个任务都会去抢cpu运行,为了使得 主线程不去抢,使用 t1.join() 即可实现让主线程处于等待阻塞状态,

2021-04-02 15:43:26 62 1

原创 python进阶笔记之os库与装饰器

pycharm调用外部程序应用场景:当公司项目成熟的时候,python代码会运行在 项目服务器上,需要对服务器进行一些操作,比如获取服务器的ip地址等信息,此时就需要用到如下库实现有两种方法可以实现:os.system方法调用,subprocess库os.system方法解释:等于打开操作系统的shell,敲入一串命令,比如ipconfig命令import os# 在shell终端 输入ipconfigos.system('ipconfig')print("after call")

2021-03-25 18:15:01 65

原创 pycharm定义子类时,父类属性和方法不自动提示的问题

今天在学习线程时,按照教程新建一个子类,定义该子类继承第三方库的一个Thread类,但是在写代码 指明继承时,父类死活没有提示,找了百度n种方法都未解决,后来突然发现把上面的代码 注释掉,就又给提示了,不知道啥原因。。。。。后来发现问题出在while循环上,不知道为什么写个循环能导致 后面的代码不提示...

2021-03-22 16:48:18 911

原创 Python CGI编程

Python CGI编程 1.程序开始执行 2.程序初始化 3.程序处理 4.程序输出 5.程序执行终止

2021-03-19 11:18:49 81

原创 python高级教程 笔记

面向对象技术简介方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。 对象:通过类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法。创建类class Employee: '所有员工的基类' empCount = 0 def __init__(self, name, salary): self.name = name self.salary = salary

2021-03-19 11:18:02 255

原创 python 基础教程笔记

Python 标识符以下划线开头的标识符是有特殊意义的。以单下划线开头_foo的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用from xxx import *而导入。以双下划线开头的__foo代表类的私有成员,以双下划线开头和结尾的__foo__代表 Python 里特殊方法专用的标识,如__init__()代表类的构造函数。Python 变量类型Python 元组用()标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。列表是有序的对...

2021-03-16 16:57:01 109

原创 Golang 源码解读之sync 包(除pool)

关于sync包sync包由多个.go文件组成,每个.go文件里定义了一个对象以及该对象的使用方法等。如对象有:sync.Mutex,sync.RMutex,sync.Once,sync.Cond,sync.Waitgroup整个包 都围绕着 Locker接口进行,该接口只包含了两个 方法。注:该包下的对象,在使用过之后,不能进行复制操作,否则会运行出错// Locker表示可以锁定和解锁的对象type Locker interface { Lock() Unlock()}锁的引入在多个协

2021-03-09 16:05:17 412

原创 golang之sync.Pool源码解读

MPG模式1、要了解sync.Pool得先 了解golang的调度模型MPG。2、MPG就是让 Go程序 智能地 将 goroutine协程中的 任务合理的分配给每个CPU。goroutine协程 是由Go 的运行时(runtime)调度和管理的,所以 MPG 就是 Go语言运行时(runtime)层面的实现。3、MPG包含三个部分:M(内核线程)、P(管理一组go协程)、G(一个go协程)M:Machine,一个M直接关联了一个内核线程, 一个groutine最终是要放到M上执行的;P:pro

2021-03-04 19:24:13 516 3

原创 golang源码解读之io/ioutil

包ioutil实现一些I/O实用程序函数func ReadAll 方法外部调用方法, 封装了 readAll, 设置 缓冲片大小为512字节,传参由 2个减少至了一个,从r 读取器 读取,直到出现错误或EOF并返回它读取的数据。 成功的调用返回errnil,而不是errEOF因为ReadAll定义为从src读取直到EOF,所以它不会将EOF from read视为要报告的错误。func ReadAll(r io.Reader) ([]byte, error) { return readAll(r

2021-03-01 17:14:27 350

原创 golang源码解读之io包

关于io包io包提供了对I/O原语的基本接口。本包的基本任务是包装这些原语已有的实现(如os包里的原语),使之成为共享的公共接口,这些公共接口抽象出了泛用的函数并附加了一些相关的原语的操作。因为这些接口和原语是对底层实现完全不同的低水平操作的包装,除非得到其它方面的通知,客户端不应假设它们是并发执行安全的。原语:计算机进程的控制通常由原语完成。所谓原语,一般是指由若干条指令组成的程序段,用来实现某个特定功能,在执行过程中不可被中错误变量// ErrShortWrite意味着写入接受的字节数少于请求

2021-03-01 16:00:22 654 2

原创 golang源码解读之http.server

// HTTP server. See RFC 7230 through 7235.package httpimport ( "bufio" "bytes" "context" "crypto/tls" "errors" "fmt" "io" "io/ioutil" "log" "net" "net/textproto" "net/url" urlpkg "net/url" "os" "path" "runtime" "sort" "strconv" "stri

2021-02-02 17:54:31 817

原创 golang源码解读之http.http

/* * @Author: Juanis * @Date: 2021/1/20 11:02 *///go:generate bundle -o=h2_bundle.go -prefix=http2 -tags=!nethttpomithttp2 golang.org/x/net/http2package httpimport ( "io" "strconv" "strings" "time" "unicode/utf8" "golang.org/x/net/http/http

2021-02-02 17:53:31 198

原创 golang源码解读之http.cookie

/* * @Author: Juanis * @Date: 2021/1/20 14:19 */package httpimport ("log""net""net/textproto""strconv""strings""time")// 定义了cookie结构体,以及各个字段的判断合法方法,以及解析cookie和生成cookie的方法// 一个Cookie实例 表示在HTTP响应的Set-Cookie头或HTTP请求的Cookie头中发送的HTTP Cookietyp

2021-02-02 17:52:30 823

原创 golang源码解读之http.response

关于response在接收和解释请求消息后,服务器会返回一个 HTTP 响应消息,与 HTTP 请求类似,HTTP 响应也是由三个部分组成,分别是:状态行、消息报头和响应正文代码解析Response 结构体Response表示来自HTTP请求的响应。 一旦收到响应头,客户机和传输将从服务器返回响应。 响应主体在读取主体字段时按需流式传输type Response struct { Status string // e.g. "200 OK" StatusCode int //

2021-02-01 18:12:44 2447

原创 golang源码解读之http.request

关于requestrequest 表示由服务器接收或由客户端发送的HTTP请求,例如客户端(client)在发送各种请求时,需要先新建一个请求对象,然后调用一些请求的方法设置指定的字段。如请求的目的地址、请求的附加信息等关于request.go文件主要包含如下几个部分代码:1、http请求中的一些错误类型(部分已弃用)2、request请求结构体对象,以及该对象的 获取上下文方法,2个修改上下文方法(都用到clone方法),获取协议是否至少是0(major.minor)3、以及请求头的处理方法:

2021-01-31 10:02:29 3930

原创 golang源码解读之http.client

http客户端介绍http 是典型的 C/S 架构,客户端(client)向服务端发送请求(request),服务端(server)做出应答(response)。本文章主要介绍Golang中http客户端的相关源码,源码主要在net/http/client.go中client.go 文件 内容总括:① 首先 定义了客户端对象, 以及客户端的send发送请求获取响应的方法(调用了内部send方法),获取截止时间方法、获取往返处理器方法;② 然后 内部send方法实现,主要是判断请求内容,以及使用 Ro

2021-01-22 18:51:00 1604 2

原创 golang源码解读之context包

context包定义上下文类型,它跨API边界和进程之间传递截止日期、取消信号和其他请求范围的值。对服务器的传入请求应创建上下文,对服务器的传出调用应接受上下文。它们之间的函数调用链必须传播上下文,可以选择将其替换为使用WithCancel、WithDeadline、WithTimeout或WithValue创建的派生上下文。当上下文被取消时,从它派生的所有上下文也被取消。//WithCancel、WithDeadline和WithTimeout函数接受上下文(父级)并返回派生上下文(子级)和Can

2021-01-17 21:08:22 429

原创 golang源码解读之 net.Dial

1、调用 例子conn, err := net.Dial("tcp", "google.com:80")if err != nil { // handle error}fmt.Fprintf(conn, "GET / HTTP/1.0\r\n\r\n")status, err := bufio.NewReader(conn).ReadString('\n')// ...源码dial.go文件中没有实际发起连接,主要是对一些参数进行预处理,比如:解析网络类型、从addr解析ip地址,而实际发

2021-01-11 19:26:16 5690

空空如也

空空如也

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

TA关注的人

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