python静态代码检查
? ? 我们知道python是一门脚本语言,不像C#/Java等编译型语言可以在编译阶段就报出代码错误,脚本语言往往需要在运行期执行到这段代码时才会抛出代码错误。
那么在实际商业项目中使用python开发,我们是怎样做静态代码检查的呢?
? ? 首先在我们项目组推荐使用vscode做为python开发工具,本文我介绍下我们做的python代码静态审查来减少运行期的py脚本错误。
- 安装vscode插件:save and run,下载地址: Save and Run - Visual Studio
Marketplace - 通过pip install pyflakes 这个模块,安装后就有pyflakes.exe
- 在vscode中配置文件(settings.json)中增加这几行配置
"saveAndRun": {
"commands": [
{
"match":"\\.py$",
"isAsync":true,
"cmd":"python C:\\Python27\\Scripts\\pyflakes.exe ${file}"
}
]
},
- 在vscode中编写完py脚本,在保存时就会提示你当前文件是否有脚本错误了。
验证一下
语法报错
? ? 代码缩进在python中是语法,如果在纯文本中编辑代码或复制粘贴的代码,很大概率会出现缩进不对从而在运行时报错,通过上面的设置后在从保存py文件时就会报错出来。
PS E:\Code\python_study> python C:\Python27\Scripts\pyflakes.exe e:\Code\python_study\hello_netease.py
e:\Code\python_study\hello_netease.py:10:1: unexpected indent
print ("hello netease")
^
python用法报错
? ? 比如这个py文件中有一处错误,在保存py时就会提示你脚本有错误,这是因为global变量不能在初始化时赋值。
e:\Code\python_study\true-false逻辑控制符.py:9:17: invalid syntax
global log_func = 1
^
其它插件
可选插件: Pylance - Visual Studio Marketplace
? ? 如果对软件测试、接口测试、自动化测试、持续集成、面试经验。感兴趣可以进到806549072,群内会有不定期的分享测试资料。还会有技术大牛,业内同行一起交流技术
|