- 博客(73)
- 收藏
- 关注
原创 面试常见问题—测试
工作流程 黑盒测试方法 对给定的功能设计测试用例 测试用例和BUG的要素 如何区别前端还是后端问题 网页打开慢的原因 介绍下测试的产品 项目中印象深刻的BUG 接口测试用例怎么设计 接口测试的验证点 接口自动化测试怎么做的以及达到了什么效果 压力测试怎么做的 postman变量和接口关联 charles抓包原理 charles的rewrite功能 charles弱网功能 requests保持cookie locust pytest参数化...
2020-10-13 08:35:26
259
转载 Linux 常用命令
1.ls命令:格式::ls [选项] [目录或文件]功能:对于目录,列出该目录下的所有子目录与文件;对于文件,列出文件名以及其他信息。常用选项:-a :列出目录下的所有文件,包括以 . 开头的隐含文件。-d :将目录像文件一样显示,而不是显示其他文件。-i :输出文件的i节点的索引信息。-k :以k字节的形式表示文件的大小。-l :列出文件的详细信息。-n :用数字的UID,GID代替名称。-F : 在每个文件名后面附上一个字符以说明该文件的类型,“*”表示可执...
2020-05-30 18:51:56
362
原创 Pytest 用法
目录1.识别2.运行和参数3.失败重新执行 rerunfailures4.断言失败继续向下执行 assume5.setup,teardown6.fixture 功能6.1 参数 scope6.2 参数 params6.3 参数 autouse7.conftest.py8.参数化8.1 @pytest.mark.parametrize(argnames,argvalues)8.2@pytest.fixtrue(params=[])8.3 pyte..
2020-04-29 21:47:35
536
原创 正则表达式和Python re
目录1、正则表达式2、练习3、Python rematchsearchfindallsubcompile1、正则表达式匹配0-9之间的任何一个数字,用\d 匹配任何单个字符,用通配符. 转义,用转义符\ 匹配特定字符,用方括号[],例如[cmf]匹配cmf其中任何一个字母 排除掉特定字符,用^和方括号[],例如,[^b]匹配除b之外的任何一个字母 匹配连续范围的特定字符,用-和方括号[],例如[a-d]匹配abcd其中任何一个字母,[2-4]匹配234任何一
2020-04-19 21:35:25
442
转载 Locust - core.py模块源码剖析
core.py模块模块是整个Locust的核心部分代码,包含了HttpLocust类和TaskSet类等。task函数def task(weight=1): """ 常被用作装饰器,用于声明是TaskSet类中的任务,并分配所占比例 class ForumPage(TaskSet): @task(100) def read_t...
2020-02-27 10:24:29
588
转载 Locust - clients.py模块源码剖析
clients.py模块中核心包含了两个类,分别是HttpSession和ResponseContextManager,两者分别是对requests.Session和requests.Response进行封装得到的。HttpSession类class HttpSession(requests.Session): """ HttpSession是基于requests.Ses...
2020-02-27 10:20:05
281
原创 性能测试工具 Locust
二.Locustfrom locust import HttpLocast,TaskSet,taskUserBehavior/WebsiteTasks 继承 TaskSet,是实现用户行为的类。测试 Web 项目,WebsiteUser 继承 HttpLocust,但 HttpLocust 继承于 Locust。WebsiteUser 继承 HttpLocust,是模拟用户...
2020-02-26 16:54:01
1064
原创 Fluent Python 4控制流程
1.可迭代对象、迭代器、生成器Python __iter__ 和迭代器(iterator)Python生成器及创建数据通道Python Cookbook 4迭代器和生成器2.上下文管理器和 else 块7.3 如何让对象支持上下文管理器3.协程4.使用期物处理并发5.使用 asyncio 包处理并发...
2020-02-08 16:53:47
319
原创 Fluent Python 3函数 9重载运算符
运算符重载的名声并不好, 这个语言特性被滥用,导致缺陷和意料之外的性能瓶颈。 但是,如果使用得当,API 会变得好用,代码会变得易于阅读。1.重载运算符的限制规定:不能重载内置类型的运算符;不能新建运算符, 只能重载现有的;某些运算符不能重载——is、 and、 or 和 not(不过位运算符&、 | 和 ~ 可以)2. 一元运算符- 取负,__neg__+取...
2020-02-08 15:58:42
238
原创 Fluent Python 3函数 8子类化内置类型和多重继承
1.不要子类化内置类型直接子类化内置类型(如 dict、list 或 str)容易出错, 因为内置类型的方法通常不会调用子类覆盖的方法。示例:>>> class DoppelDict(dict): def __setitem__(self, key, value): super().__setitem__(key, [value] * 2) >&...
2020-01-19 15:29:21
275
原创 Fluent Python 3函数 7接口:从协议到抽象基类
1.接口和协议duck-typing -- 鸭子类型指一种编程风格,它并不依靠查找对象类型来确定其是否具有正确的接口,而是直接调用或使用其方法或属性(“看起来像鸭子,叫起来也像鸭子,那么肯定就是鸭子。”)由于强调接口而非特定类型,设计良好的代码可通过允许多态替代来提升灵活性。鸭子类型避免使用type()或isinstance()检测。(但要注意鸭子类型可以使用抽象基类作为补充。...
2020-01-19 10:53:02
377
原创 Python 数据模型
1对象、值与类型对象是 Python 中对数据的抽象。Python 程序中的所有数据都是由对象或对象间关系来表示的。每个对象都有各自的编号、类型和值。一个对象被创建后,它的编号就绝不会改变;你可以将其理解为该对象在内存中的地址。 'is' 运算符可以比较两个对象的编号是否相同;id()函数能返回一个代表其编号的整型数。在 CPython 中,id(x)就是存放x的内存的地址。1...
2020-01-16 10:59:14
294
原创 Fluent Python 3函数 5符合Python风格的对象
目录1.用特殊方法实现一个2D向量类2.classmethod与staticmethod3.格式化显示4.私有属性和“受保护的”属性5.使用 __slots__ 类属性节省空间6.覆盖类属性本章的目的是说明,如何使用特殊方法和约定的结构,定义行为良好且符合 Python 风格的类。本章的特殊方法:所有用于获取字符串和字节序列表示形式的方法:__repr__、_...
2020-01-14 17:01:34
234
原创 Fluent Python 3函数 4面向对象惯用法
目录1.==和is2.元组的相对不可变性3.默认做浅复制4.函数的参数作为引用时4.1不要使用可变类型作为参数的默认值4.2防御可变参数5del 语句和垃圾回收6 弱引用6.1WeakValueDictionary6.2 弱引用的局限7Python对不可变类型施加的把戏1.==和is每个变量都有标识、类型和值。对象一旦创...
2020-01-06 10:52:18
304
原创 Fluent Python 3函数 3函数装饰器和闭包
目录1.装饰器的两个特性2.Python在被装饰函数定义完之后立即执行装饰器函数3 变量作用域4 闭包(嵌套函数)5 nonlocal 声明6 一个简单的计时装饰器7标准库中的装饰器8 叠放装饰器9 参数化的注册装饰器10参数化计时装饰器1.装饰器的两个特性装饰器是可调用的对象, 其参数是另一个函数(被装饰的函数) 。 装饰器可能会处理被装...
2020-01-05 10:58:40
255
原创 Fluent Python 3函数 2使用函数实现设计模式
1“策略”模式:定义一系列算法,把它们一一封装起来,并且使它们可以相互替换。本模式使得算法可以独立于使用它的客户而变化。 电商领域有个功能明显可以使用“策略”模式,即根据客户的属性或订单中的商品计算折扣。 假如一个网店制定了几条折扣规则,并且一个订单一次只能享用一个折扣。程序如下:注:在下面示例中,我们把折扣方法作为参数手动传入,实际中,应该是系统以某种方式去选择...
2019-12-26 14:03:26
193
原创 Fluent Python 3函数 1一等对象
目录把函数视作对象高阶函数和匿名函数可调用对象函数的参数函数注解operator 模块functools.partial把函数视作对象编程语言理论家把“一等对象”定义为满足下述条件的程序实体:在运行时创建 ;能赋值给变量或数据结构中的元素 ;能作为参数传给函数 ;能作为函数的返回结果;在 Python 中,整数、字符串和字典都是一等对象...
2019-12-25 15:01:56
205
原创 Fluent Python 2数据结构 4文本和字节序列
目录4.1memoryview 和 struct4.2 编码、解码4.3 处理文本文件4.4为了正确比较而规范化Unicode字符串4.5Unicode文本排序(略)4.6支持字符串和字节序列的双模式API4.1memoryview 和 structstruct 模块提供了一些函数,把打包的字节序列转换成不同类型字段组成的元组,还有一些函数用于执行反...
2019-12-25 11:30:07
226
原创 Fluent Python 2数据结构 2字典和集合
目录3.1 字典推导3.2 setdefault3.3collections.defaultdict3.4collections模块中的变种字典#1OrderedDict#2collections.ChainMap#3collections.Counter#4collections.UserDict3.5 集合3.6 散列表3.6....
2019-12-24 14:28:25
268
原创 Fluent Python 2数据结构 1序列
目录一、序列2.1 列表推导和生成器表达式2.1.1 列表推导2.1.2生成器表达式2.2元组2.2.1 元组2.2.2 元组拆包2.2.3 collections.namedtuple2.3 切片2.3.1为什么切片、区间会忽略最后一个元素2.3.2 命名切片 slice(start, stop, step)2.3.3 切片赋值2.4 序...
2019-12-23 16:00:05
281
原创 Fluent Python 1Python 数据模型
目录1.1__getitem__和 __len__1.2 __repr__ 和 __str__1.3 特殊方法一览通过实现特殊方法,自定义数据类型可以表现得跟内置类型一样,从而让我们写出更具表达力的代码——或者说,更具 Python 风格的代码。1.1__getitem__和 __len__object.__getitem__(self,key)调用...
2019-12-23 11:38:05
244
原创 Python 特殊方法
目录7.1 如何派生内置不可变类型并修改实例化行为7.2 如何为创建大量实例节省内存7.3 如何让对象支持上下文管理器7.4 如何创建可管理的对象属性7.1 如何派生内置不可变类型并修改实例化行为1.__new__ 和 __init__object.__new__(cls[,...]) __new_()是在对象的实例化中被调用的第一个方法,是一个...
2019-12-22 15:27:29
232
原创 Python 加速程序运行的实用技术
目录1.使用属性访问调用方法会有额外时间开销2.局部变量会比全局变量运行速度快3.使用函数比没有结构的代码要快4. 使用额外的处理层(比如装饰器、属性访问、描述器)包装代码会使程序运行变慢5.内置的容器更快6.避免创建不必要的数据结构或复制在优化之前要看的:14.14加速程序运行1.使用属性访问调用方法会有额外时间开销每一次使用点(.)操作符来访问属性...
2019-12-20 16:02:06
167
原创 Python Cookbook 14测试、调试和异常
目录14.1怎么测试输出结果是否正确14.3怎么判断程序里某个预计异常是否被抛出14.4将测试输出用日志记录到文件中14.5忽略或期望 测试失败14.6处理多个异常14.7捕获全部的异常14.8创建自定义异常14.9捕获异常后抛出另外的异常14.11 怎么在自己的程序能生成警告信息14.12调试14.13测试程序运行所花费时间并...
2019-12-19 15:26:39
621
原创 Python sys 模块的 sys.argv
sys.argv一个列表,其中包含了被传递给 Python 脚本的命令行参数。argv[0]为脚本的名称(是否是完整的路径名取决于操作系统)。如果是通过 Python 解释器的命令行参数-c来执行的,argv[0]会被设置成字符串'-c'。如果没有脚本名被传递给 Python 解释器,argv[0]为空字符串。示例:#gyf.pyimport sysprin...
2019-12-18 14:35:09
508
原创 Python Cookbook 13脚本编程和系统管理
目录13.1接受通过重定向、管道、文件的方式的输入13.2终止程序并给出错误信息13.3解析命令行选项13.4运行时弹出密码输入提示13.5 查询终端的尺寸13.6执行外部命令并获取它的输出13.7复制或者移动文件和目录13.8创建和解压压缩文件13.9通过文件名查找文件13.10读取配置文件13.11给简单脚本增加日志功能...
2019-12-18 11:36:35
309
原创 Python Cookbook 12并发编程(待补)
12.1 启动和停止线程怎么为需要并发执行的代码创建/销毁线程?threading库可以在单独的线程中执行任何的在 Python 中可以调用的对象。classthreading.Thread(group=None,target=None,name=None,args=(),kwargs={},*,daemon=None)target是用于run()方法调用的可...
2019-12-17 15:04:20
287
原创 Python Cookbook 11网络与Web编程(待补)
11.1作为客户端与HTTP服务交互怎么通过HTTP协议以客户端的方式访问多种服务?例如,下载数据或者与基于REST的API进行交互。对于真的很简单HTTP客户端代码,用内置的urllib模块通常就足够了。urllib.request.urlopen(url,data = None,[timeout,]*,cafile = None,capath = None,cadefau...
2019-12-17 10:03:13
302
原创 Python Cookbook 10模块与包
目录10.1 构建一个模块的层级包10.2控制模块被全部导入的内容10.3 使用相对路径名导入包中子模块10.4将模块分割成多个文件10.5利用命名空间导入目录分散的代码10.6重新加载模块10.7运行目录或压缩文件10.8读取位于包中的数据文件10.9将文件夹加入到sys.path10.10通过字符串名导入模块10.11通过...
2019-12-16 10:36:42
338
原创 Python 文件
目录1.如何读取文本文件2.如何处理二进制文件3. 如何设置文件的缓冲4.如何将文件映射到内存5.如何访问文件的状态?#1 os.path模块#2 os.stat() 函数6. 如何使用临时文件7. 如何读写 CSV数据8.如何读写 JSON数据9. 如何读取简单的XML文档10.如何构建 XML文档11.如何读写 EXCEL文件1...
2019-12-15 13:02:00
220
原创 转义字符 \和字符串前缀r,b,u,f
目录1.转义字符 \2.字符串前缀 r,b,u,f1.转义字符 \Python 字符串是以单引号或双引号括起来的任意文本,如果字符串中包含引号怎么办?# 对 ' " 转义>>> print('I\'m ok.') I'm ok.# 对 \自身转义>>> file = 'C:\\Users\\86188\\Desktop...
2019-12-14 22:16:43
1070
原创 Python Cookbook 9元编程(待补)
9.1 在函数上添加装饰器Python装饰器(Decorator)https://blog.youkuaiyun.com/qq_42105144/article/details/1031854029.2创建装饰器时保留函数元信息任何时候定义装饰器的时候,都应该使用functools库中的@wraps装饰器来注解底层包装函数。9.3 解除一个装饰器怎么直接访问原始的未包装的那个函数...
2019-12-13 15:14:04
188
原创 Python Cookbook 8类与对象(待补)
目录8.1 改变对象的字符串显示8.2 自定义字符串的格式化8.3 让对象支持上下文管理协议8.4 创建大量对象时节省内存方法8.5 在类中封装属性名8.6 创建可管理的属性8.7调用父类方法8.8 子类中扩展property8.9 创建新的类或实例属性8.10 使用延迟计算属性8.11 简化数据结构的初始化8.12 定义接口或者抽象基类...
2019-12-12 15:05:52
270
原创 Python Cookbook 7函数
目录7.1 可接受任意数量参数的函数7.2 只接受关键字参数的函数7.3 给函数的参数增加元信息7.4 返回多个值的函数7.5 定义有默认参数的函数7.6 定义匿名或内联函数7.7 匿名函数捕获变量值7.8 减少可调用对象的参数个数(待补)7.9 将单方法的类转换为函数(待补)7.10 带额外状态信息的回调函数7.11 内联毁掉函数7.12 访...
2019-12-11 09:40:37
260
原创 Python Cookbook 5文件与IO
目录5.1读写文本数据5.2打印输出至文件中5.3 使用其它分隔符或行终止符打印5.4 读写二进制数据5.5 文件不存在时才能写入5.6 字符串的IO操作5.7 读写压缩文件5.8 固定大小记录的文件迭代5.9读取二进制数据到可变缓冲区中5.10 内存映射的二进制文件5.11 文件路径名的操作5.12 测试文件是否存在5.13 获取文...
2019-12-09 10:26:42
451
原创 Python Cookbook 3数字、日期和时间
3.1 浮点数舍入运算round(number[,ndigits])返回number舍入到小数点后ndigits位精度的值。当一个值刚好在两个边界的中间的时候,round函数返回离它最近的偶数。>>> round(3.141592653,2)3.14>>> round(1.5,0)2.0>>> round(...
2019-12-04 17:06:08
255
原创 Python Cookbook 2字符串和文本
目录2.1 使用多个分隔符分隔字符串2.2 字符串开头或结尾匹配2.3 用shell通配符匹配字符串2.4 字符串匹配和搜索2.5 字符串搜索并替换2.6 字符串忽略大小写的搜索替换2.7 非贪婪匹配(最短模式匹配)2.8 多行匹配模式2.9 将Unicode文本标准化2.10在正则式中使用Unicode2.11删除字符串中不需要的字符2....
2019-12-03 08:59:53
441
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅