您的位置:MYSQL中文网 > 代码自动检查 Tornado 自动检测开发中的代码更改

代码自动检查 Tornado 自动检测开发中的代码更改

2023-05-24 12:30 PythonTornado教程

代码自动检查 Tornado 自动检测开发中的代码更改

代码自动检查

代码自动检查是一种软件工具,它可以帮助开发人员检查代码中的错误和不良习惯。它可以在开发过程中对代码进行实时检查,并且可以在开发人员将代码提交到版本控制系统之前对其进行预处理。

代码自动检查的优势在于,它能够快速有效地找出常见的错误和不良习惯,而且能够在开发人员将代码提交到版本控制之前就对其进行预处理。此外,它还能够帮助开发人员遵循一些有用的标准和最佳实践,从而使得代码易于理解和修改。

// 例子:使用 ESLint 来进行 JavaScript 代码的自动化检测
const eslint = require('eslint');
const CLIEngine = eslint.CLIEngine;
const cli = new CLIEngine({}); // 初始化 CLIEngine 实例 
let report = cli.executeOnFiles(['src/index.js']); // 执行文件检测 
let formatter = cli.getFormatter(); // 获取默认的格式化器 
console.log(formatter(report.results)); // 打印出错误信息 

Tornado 自动检测开发中的代码更改

修改源文件时自动重启服务器。

大多数应用程序不应直接访问此模块。 相反,将关键字参数 ​autoreload=True​ 传递给 ​tornado.web.Application​ 构造函数(或 ​debug=True​,这将启用此设置和其他几个设置)。 这将启用自动重新加载模式以及检查模板和静态资源的更改。 请注意,重新启动是一种破坏性操作,当进程重新启动时,任何正在进行的请求都将被中止。 (如果您想在使用其他调试模式功能时禁用自动重载,请同时传递 ​debug=True​ 和 ​​autoreload=Fals​e​)。

该模块也可以用作脚本的命令行包装器,例如单元测试运行器。

命令行包装器和应用程序调试模式可以一起使用。 鼓励这种组合,因为包装器会捕获语法错误和其他导入时失败,而调试模式会在服务器启动后捕获更改。

当使用 ​HTTPServer的多进程模式时,该模块将无法正常工作。

重新加载会丢失任何 Python 解释器命令行参数(例如 -u),因为它使用 ​sys.executable​ 和 ​sys.argv​ 重新执行 Python。 此外,修改这些变量将导致重新加载行为不正确。

tornado.autoreload.start(check_time: int = 500) → None

开始观察源文件的变化。

在 5.0 版中更改: ​io_loop参数(自 4.1 版以来已弃用)已被删除。

tornado.autoreload.wait() → None

等待监视的文件更改,然后重新启动该过程。

旨在用于单元测试运行器等脚本的末尾,以在任何源文件更改后再次运行测试

tornado.autoreload.watch(filename: str) → None

将文件添加到监视列表。

默认情况下会监视所有导入的模块。

tornado.autoreload.add_reload_hook(fn: Callable[[], None]) → None

在重新加载进程之前添加一个要调用的函数。

请注意,对于打开的文件和套接字句柄,通常最好设置 ​FD_CLOEXEC标志(使用 ​fcntl或 ​os.set_inheritable​)而不是使用重新加载挂钩来关闭它们。

tornado.autoreload.main() → None

命令行包装器,用于在其源更改时重新运行脚本。

脚本可以由文件名或模块名指定:

python -m tornado.autoreload -m tornado.test.runtests
python -m tornado.autoreload tornado/test/runtests.py

使用此包装器运行脚本类似于在脚本末尾调用 tornado.autoreload.wait,但此包装器可以捕获导入时问题,例如语法错误,否则会阻止脚本对​wait调用。


阅读全文
以上是MYSQL中文网为你收集整理的代码自动检查 Tornado 自动检测开发中的代码更改全部内容。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
相关文章
© 2024 MYSQL中文网 mysqlcn.com 版权所有 联系我们
桂ICP备12005667号-29 Powered by CMS