使用timeit测试Python函数的性能

2020-03-06
阅读 3 分钟
3.2k
timeit是Python标准库内置的小工具,可以快速测试小段代码的性能。认识timeittimeit 函数: {代码...} 参数说明:stmt: statement的缩写,你要测试的代码或者语句,纯文本,默认值是 "pass"setup: 在运行stmt前的配置语句,纯文本,默认值也是 "pass"timer: 计时器,一般忽略这个参数number: stmt执行的次数,默认是1000...

Bash 脚本中的 set -euxo pipefail

2020-02-15
阅读 3 分钟
3.3k
有些开发人员会用Bash来实现很复杂的功能,就像使用别的高级语言一样。他可能觉得自己很牛逼但其他人早就想锤爆他了,Bash的可读性和可维护性远远低于任何高级语言。更要命的是,Bash并没有方便的调试工具和防错机制,出了问题你要排查半天。

测试左移和开发赋能

2019-04-21
阅读 2 分钟
3.8k
从事测试开发那么长一段时间,一直不知道怎么去评价和衡量这个职业的目标是什么,超高的自动化测试覆盖率?或者超稳定超包容的自动化测试框架?怎么才算得上是一个优秀的测试开发人员?上周有机会去听了阿里2天的公开课,好像明白了一些,拿来跟大家分享一下。内建质量在微软有一句名言:“质量是设计出来,而不是测出来...

用VueJS写一个Chrome浏览器插件

2019-02-25
阅读 5 分钟
12.7k
浏览器插件官方的说法叫扩展程序,允许你为浏览器增加各种功能,但不需要深入研究浏览器本身的代码。你可以用HTML,CSS和JavaScript创建新的扩展程序,如果你曾经写过网页,那么写一个插件是非常轻松的事情。

反向代理和内网穿透

2019-02-23
阅读 3 分钟
11.1k
所谓正向代理,就是大家通常说的代理。打个通俗的比方,你想跟你舅舅借钱,但不好开口(或者你舅妈会设法阻拦),就跟你妈说。这时母亲大人就是个正向代理。此时代理本质就是个桥的作用,这个桥让你能和桥对面的人交换信息。

一些 PyCharm 的使用和设置建议

2019-02-08
阅读 4 分钟
12.6k
PyCharm是我强烈推荐的Python IDE,如果你有EDU的邮箱可以直接申请专业版授权,或者就使用社区版,功能上并没有太多缩减,日常开发也完全够用。

用 Python 实现简单的 switch/case 语句

2018-09-16
阅读 3 分钟
9.9k
在Python中是没有Switch / Case语句的,很多人认为这种语句不够优雅灵活,在Python中用字典来处理多条件匹配问题字典会更简单高效,对于有一定经验的Python玩家不得不承认,的确如此。

xmind2testlink - 快速设计测试案例并导入TestLink

2018-09-15
阅读 3 分钟
6.6k
zip这一世界通用压缩标准是美国20世纪80年代著名程序员Phil Katz 发明的。当时为了对抗商业压缩软件ARC(缺钱买不起),Philip Katz 制作出了PKZIP,因为免费而且开放,越来越多的软件都内嵌支持zip,包括Windows操作系统。你可以使用任何一种文本编辑器打开zip文件,文件的头两个字母为 PK。

将xmind文件转成可编程数据类型

2018-07-01
阅读 2 分钟
11.5k
xmind是知名的思维导图软件,可以用来整理思路,设计测试案例等等。一旦完稿后软件本身支持导出为图片,PDF,Excel等等文件格式。免费版相对于Pro版能导出的文件种类少一些,但有时候你可能想我做的xmind能不能通过编程再加工一下,比如集成到某个网页,或者通过api和某某系统集成。

NodeJS起步两三事

2018-06-02
阅读 4 分钟
2.1k
主要是为了备忘,开始接触NodeJS有一段时间,断断续续,年纪也大了时间一长容易忘事情,汗。 安装Node 直接到官网下载LTS版本安装即可,没必要追新功能用最新版。安装Node基本没什么坑,记得加到PATH就好。 Windows双击安装,macOS推荐使用brew安装,完成后在命令行里测试一下。 {代码...} 后期如果没有啥breaking的API...

使用浏览器的HEADLESS模式进行自动化测试

2018-05-18
阅读 2 分钟
6.7k
例如你想在网页上运行一些测试,从网页抓取信息,检查浏览器访问某些资源的状态,定时截取网页等等,你需要的是浏览器处理网页但不一定需要浏览器界面,这些情况都是HEADLESS BROWSER的应用场景。

Sentry - 处理异常日志的正确姿势

2018-05-14
阅读 4 分钟
29.2k
应用越做越复杂,输出日志五花八门,有print的,有写stdout的,有写stderr的, 有写logging的,也有自定义xxx.log的。那么这将导致平台应用日志分布在各个地方,无法统一管理。而且可能用的还不止一种开发语言,想规范和统一日志不是一件容易的事。

说说Python中的单元测试

2018-05-14
阅读 3 分钟
11.3k
单元测试是每种编程语言必学的课题,是保护开发者的强力护盾,每个程序员都在时间允许的情况下尽可能多的写单元测试,今天我们不讨论其必要性,只抛砖引玉聊一聊Python中的单元测试,本文仅代表个人看法。

Python 查找重复文件升级版 - photodup

2018-05-14
阅读 2 分钟
3.1k
之前写了一个简化版的使用Python查找目录中的重复文件,现在升级了一下,我们来提供一个友好的网页界面。 思路 上一个版本我们非常简单粗暴地将所有文件的hash扫描后保存到一个字典中,字典结构大概是这样的: {代码...} 然后通过一个循环找出hash值对应的数组长度大于1的数组,现在我们把这个扫描结果保存到数据库中,...

使用Python查找目录中的重复文件

2018-03-23
阅读 2 分钟
10k
是这样的,电脑上的堆积的照片有点多,而且重复的照片被放在了不同的目录,占用的空间越来越大,数量也多得已经不太适合人工分辨整理,写个Python脚本来处理吧。

自动为Flask写的API生成帮助文档

2018-02-27
阅读 4 分钟
9.2k
Flask是Python一个非常轻量的库,可以让你毫不费力地写一个简单的网站。如果你需要写一些后台API或者准备自动化测试数据时,Flask是一个非常不错的选择。

认识 Python 中的 defaultdict

2018-02-02
阅读 6 分钟
3.3k
众所周知,在Python中如果访问字典中不存在的键,会引发KeyError异常。但是有时候,字典中的每个键都存在默认值是非常方便的。例如下面的例子:

识别图片中的文字 - Tesseract 和 百度云OCR的对比

2018-01-16
阅读 4 分钟
66.5k
OCR (Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程。

【问题】从一长串数字中找到重复多次的三个数字

2018-01-03
阅读 2 分钟
2.9k
假设给定一个很长的数字,比如PI精确到100万位,找到其中重复出现相邻三个数字。比如给定的数字是1233223332321234323123,那么结果应该是:

使用ADB无线连接Android真机进行调试

2017-12-25
阅读 1 分钟
6.9k
其实这已经是一个很古老的知识了,记录备忘。 准备工作 手机和电脑需要在同一个局域网内 电脑上已经安装好ADB工具,可以是Mac或者Windows 开始 1. 打开手机端口 让手机在指定的端口可以接收到TCP/IP连接。 确保手机开启了usb调试 用usb线把手机和电脑连接起来 执行命令:adb tcpip 5555 执行成功后就可以把usb线拔掉了,...

30行Python代码刷王者荣耀金币

2017-12-21
阅读 2 分钟
22.2k
王者荣耀的冒险模式里有个挑战模式,第一次过关可以获得比较多的金币,后面重新挑战还是会获得少量金币,这不算是bug,你不嫌烦手动蛮力也可以刷金币。

在Mac OSX 上配置Appium+Android自动化测试环境

2017-12-14
阅读 4 分钟
11.2k
前提准备 开始正文之前,你需要准备好一些基本条件: 安装好Mac OSX 操作系统的设备 能够访问中国局域网以外资源的方法(没有也行,但很痛苦) 已经安装好 homebrew 已经安装好 Python3.x 已经安装好 Java Runtime Environment 安装 Android Studio / SDK 本文主要为了测试安卓应用,那么这里我们就需要安装Android Stud...

如何使用Python优雅地处理时间数据

2017-10-09
阅读 2 分钟
3.5k
很多时候我们不得不和时间打交道,但在Python标准库中处理时间的模块其实设计的不是很友好,为什么我会这么说?因为我相信大部分人几乎每次在处理时间数据时一而再,再而三的去查文档,比如时间和文本格式互转,时间增减等看起来非常基本的操作,在Python中处理起来并不简单。

Windows UI自动化测试的XPATH实现 - WPATH

2017-07-25
阅读 4 分钟
6.3k
从事Windows 桌面应用自动化测试也有一些年了,现在谈这个话题并不流行。因为除了企业级应用,很少有公司会只选择Windows桌面作为目标用户平台,一般都会考虑跨平台的浏览器解决方案,桌面应用的地位渐渐下降,这是事实。

如何开发一个 PyCharm 插件

2017-04-19
阅读 5 分钟
8.8k
PyCharm 是很多 Python 开发者优先选择的 IDE,功能强大,跨平台,提供免费社区版,非常良心。如果你想自己给PyCharm添加一些功能怎么办呢?有两个办法:

在Windows平台使用IIS部署Flask网站

2017-03-31
阅读 4 分钟
27.2k
在 Windows 平台部署基于 Python 的网站是一件非常折腾的事情,Linux/Unix 平台下有很多选择,本文记录了 Flask 部署到 IIS 的主要步骤,希望对你有所帮助。

发布你自己的轮子 - PyPI打包上传实践

2017-03-12
阅读 3 分钟
20.2k
本文仅讨论上传相关的步骤,关于如何给写一个setup.py 请参阅官方文档: [链接] 上传前的注意事项 假设你的包已经开发完成,并且根目录必须要有一个setup.py。 最好有一个README.rst 用来描述你的轮子,虽然这不是必须的,但文档就像内裤,你最好还是要有的。 如果你需要打包代码文件夹以外的文件,比如版权信息等等,你...

获取 Google Chrome 谷歌浏览器离线安装包

2017-01-20
阅读 1 分钟
4.5k
安装到个人用户目录(C:\Users\Name),请使用以下链接: Download Google Chrome Standalone Offline Installer (32-bit) Download Google Chrome Standalone Offline Installer (64-bit) 安装后所有用户可用(C:\Program Files),请使用以下链接: Download Google Chrome Offline Installer for All User Accounts (32-b...

总结:Python中的异常处理

2016-12-08
阅读 4 分钟
55.2k
异常处理在任何一门编程语言里都是值得关注的一个话题,良好的异常处理可以让你的程序更加健壮,清晰的错误信息更能帮助你快速修复问题。在Python中,和不部分高级语言一样,使用了try/except/finally语句块来处理异常,如果你有其他编程语言的经验,实践起来并不难。

Python中的logging模块

2016-11-23
阅读 7 分钟
11.8k
最近修改了项目里的logging相关功能,用到了python标准库里的logging模块,在此做一些记录。主要是从官方文档和stackoverflow上查询到的一些内容。