Pytest 入门学习📅 2018年12月29日 · ☕ 3 分钟Pytest 测试框架使用简单、插件丰富、功能强大,被广泛用于 Python 自动化测试。本文主要介绍一些 Pytest 的基本概念和使用方法。 1. 运行机制 第一步,Pytest 从命令行或文件中读取配置 第二步,在指定目录下查找并导入 conftest.py 文件 第三步,查找满足匹配条件的测试文件,通常是 test_ 开
开发 Tips(6)📅 2018年12月14日 · ☕ 1 分钟主要记录最近遇到的一些开发问题,解决方法。 1. Python3 连接数据库 Python3 主要有两个数据库连接客户端: mysqlclient 和 PyMySQL 。 mysqlclient 是由 C 语言实现的 PyMySQL 是由 Python 实现的 在性能上, mysqlclient 比 PyMySQL 高一个数量级。但,在 PyPy 下,PyMySQL 与 mysqlclient 性能相差不大。 如果需要使用 gevent 或 eventlet 的 monkeypatched 处理 socket,
如何使用 Jenkins、Docker、GitLab 搭建 Django 自动化部署流程📅 2018年11月25日 · ☕ 5 分钟大公司的程序员,容易产生的错觉之一就是,误将平台能力当作自己的能力。在大团队,我们不应仅关注自己的一亩三分地,更需要了解平台的各个环节。一方面,有助于更好地利用平台相关特性,另一方面,也为了自我技术更好地成长。本文,介绍了如何使用 Jekin
开发 Tips(5)📅 2018年11月24日 · ☕ 3 分钟主要记录最近遇到的一些开发问题,解决方法。 1. Python 内存分析方法 主要涉及四个工具: memory_profile:分析每一行代码的内存使用量 objgraph:跟踪内存中的对象的关系 guppy:在运行时跟踪堆的使用情况 pyrasite:向进程中注入代
restframework 中 Serializer 和 ViewSet 的 API📅 2018年11月20日 · ☕ 4 分钟1. Serializer 1.1 数据校验 在反序列化数据时,需要对数据的合法性进行校验。这时,可以调用 is_valid() 进行验证,如果发生验证错误,可以在 .errors 属性获取错误提示信息。例如: 1 2 3 4 serializer.is_valid() # False serializer.errors # {'created': [u'This field is required.']} .is_valid() 方法带有一个可选的 raise_exception 标志,如果存在验证错误,将抛出 serializers.ValidationError 异常。 1 serializer.is_valid(raise_exception=True) 除了使用