上一页 1 ··· 3 4 5 6 7 8 下一页
摘要: 为什么要使用mock?场景模拟1:比如有A和B两个模块,A模块中有调用到B模块的方法,但是很不幸,B模块中被A模块调用的方法由于一定的原因需要被修改,然而我们又不想让影响A模块的功能测试,所以就用到了单元测试模块unittest中的mock模块;mock模块就是模拟出一个假的B模块;场景模拟2:有时 阅读全文
posted @ 2021-09-18 18:00 Wolf_Stark 阅读(166) 评论(0) 推荐(0)
摘要: 一、常用 Python 单测框架 若你不想安装或不允许第三方库,那么 unittest 是最好也是唯一的选择。反之,pytest 无疑是最佳选择,众多 Python 开源项目(如大名鼎鼎的 requests)都是使用 pytest 作为单元测试框架。甚至,连 nose2 在官方文档上都建议大家使用 阅读全文
posted @ 2021-09-18 12:30 Wolf_Stark 阅读(101) 评论(0) 推荐(0)
摘要: RPC概述 RPC是什么 RPC(Remote Procedure Call)远程过程调用协议,一种通过网络从远程计算机上请求服务,而不需要了解底层网络技术的协议。RPC它假定某些协议的存在,例如TPC/UDP等,为通信程序之间携带信息数据。在OSI网络七层模型中,RPC跨越了传输层和应用层,RPC 阅读全文
posted @ 2021-09-18 11:16 Wolf_Stark 阅读(45) 评论(0) 推荐(0)
摘要: java和python对比 一:解释性和编译型 梳理# 编译型:源代码经过编译直接变为二进制的机器语言,每次都可以直接重新运行不需要翻译。典型的就是c、go。 解释性:python是解释型,python也有一个编译过程,它的编译是把源文件编译为.pyc文件,为了加快python的加载过程,无法提高p 阅读全文
posted @ 2021-09-16 14:15 Wolf_Stark 阅读(1215) 评论(0) 推荐(0)
摘要: 表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL) 三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为了“高内聚,低耦合”的思想。 1、表现层(UI):通俗讲就是展现给 阅读全文
posted @ 2021-09-15 23:38 Wolf_Stark 阅读(915) 评论(0) 推荐(0)
摘要: python中对于对象的拷贝分为浅拷贝(copy)和深拷贝(deepcopy)两种方式。 其中浅拷贝由“=”完成。而深拷贝由copy模块中deepcopy()函数担任。 浅拷贝和深拷贝的区别是:浅拷贝只是将原对象在内存中引用地址拷贝过来了。让新的对象指向这个地址。而深拷贝是将这个对象的所有内容遍历拷 阅读全文
posted @ 2021-09-14 14:57 Wolf_Stark 阅读(577) 评论(0) 推荐(0)
摘要: CSRF 攻击详解 什么是CSRF攻击# CSRF(Cross-Site Request Forgery)的全称是“跨站请求伪造”,也被称为“One Click Attack”或者“Session Riding”,通常缩写为CSRF或者XSRF。CSRF的中文名称尽管听起来像跨站脚本攻击(XSS), 阅读全文
posted @ 2021-09-14 10:50 Wolf_Stark 阅读(495) 评论(0) 推荐(0)
摘要: class Node: def __init__(self, data=None): self.data = data self.next = None class LinkedList: def __init__(self): self.head = None def get_length(sel 阅读全文
posted @ 2021-09-13 23:36 Wolf_Stark 阅读(14) 评论(0) 推荐(0)
摘要: # 节点类class Node: def __init__(self, data=None): self.data = data self.next = None # 指向的是 node的地址,不是node.data的地址(留意,否则容易搞混了) # 链表类 class LinkedList: de 阅读全文
posted @ 2021-09-13 18:58 Wolf_Stark 阅读(25) 评论(0) 推荐(0)
摘要: ''' 一、函数装饰器 (装饰器自身无参数) @outer '''import time def outer(func): def inner(*args, **kwargs): pre_time = time.time() func(*args, **kwargs) after_time = ti 阅读全文
posted @ 2021-09-13 10:42 Wolf_Stark 阅读(31) 评论(0) 推荐(0)
上一页 1 ··· 3 4 5 6 7 8 下一页