跳转到主要内容

文件更改时的自动测试执行

项目描述

原因

因为单元测试很有趣

  • 当您不需要从编辑器切换到获取单元测试反馈时。
  • 当从更改到测试反馈的反馈周期更短时。

我在尝试使用rubys autotest命令时看到了这种工具的有用性,但不喜欢将高度优化的代码与VM和Docker容器等设置结合使用,在这些设置中,文件系统通知不可靠。

因此,它跳过了所有优化,只使用最简单的算法 - 迭代所有文件并查看哪些文件已更改。这出奇的好用。

除此之外,它非常简单,没有依赖关系,而且真的非常小巧。

使用方法

% watching_testrunner --help
Usage: watching_testrunner [options] [--] command [arguments...]

Options:
  -h, --help            show this help message and exit
  -b BASEPATH, --basepath=BASEPATH
                        base path to watch for changes
  -p WATCH_WILDCARD, --pattern=WATCH_WILDCARD
                        glob-style pattern for file names to watch

示例

$ watching_testrunner nosetests

当当前目录下的任何Python文件更改时,将运行nosetests。

$ watching_testrunner -- nosetests $NOSETESTS_ARGUMENTS

将运行nosetests,但不会尝试解析任何nosetests参数。

$ watching_testrunner --basepath foo/bar --pattern="*" nosetests $NOSETESTS_ARGUMENTS

当./foo/bar目录下的任何文件更改时,将运行nosetests。

$ watching_testrunner --basepath path/to/js_tests --pattern="*.js" jasmine --console

当./path/to/js_tests目录下的任何JavaScript文件更改时,将运行jasmine --console(即您可以使用监视测试运行器使用任何工具来自动执行任何语言的测试)。

特别感谢

  • Felix Schwarz,他根据我的想法实现了原始版本,在我不断催促他之后
  • Tony Narlock,他促使我将此项目移植到Python 3,并在他的账户上托管它,并关心其持续发展

项目详情


下载文件

下载适合您平台的应用文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分发

watching_testrunner-1.2.2.tar.gz (4.4 kB 查看哈希值)

上传时间 源代码

构建分发

watching_testrunner-1.2.2-py3-none-any.whl (4.8 kB 查看哈希值)

上传时间 Python 3

watching_testrunner-1.2.2-py2.py3-none-any.whl (4.8 kB 查看哈希值)

上传时间 Python 2 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面