Open End JavaScript测试和实用工具套件
项目描述
jskit包含基础设施,特别是py.test插件,允许使用py.test作为测试驱动程序直接在浏览器中运行JavaScript代码的测试。在浏览器中运行会带来一些速度成本,另一方面,它意味着代码是对现实世界的DOM实现进行测试的。
这种方法还允许编写集成测试,以便JavaScript代码可以针对必要的模拟作为服务器端Python代码进行测试。任何可以通过WSGI公开(或为适应jskit自身需求而编写WSGI子集)的已存在的服务器端框架都可以参与其中。
jskit还支持从基于unittest.py的测试套件运行JavaScript测试。
jskit还包含帮助模块化JavaScript代码的代码,这些代码可以在开发过程中动态描述和跟踪依赖关系,并在部署/打包时帮助静态解析它们。
已知支持的浏览器有Firefox、Internet Explorer >=7 和 WebKit浏览器。
jskit现在支持py.test 2.0和较晚的py.test 1.x。
jskit需要Python 2.6或2.7。它还使用MochiKit - 其中包含它自己的版本以方便使用 - 用于其自身的工作,尽管它不会强加其对测试代码的使用。
jskit最初由Open End AB开发,并使用MIT许可发布。
项目仓库位于http://bitbucket.org/pedronis/js-infrastructure/
讨论和反馈应发送至py-dev@codespeak.net
变更日志
0.9.0
将重用一个标签页/窗口及其对应的浏览器测试对象作为默认设置,以便在会话中使用相同的设置进行所有测试,当使用 py.test 2.0(它会先收集所有测试)时,此行为会被强制执行。
现在支持 py.test 2.0! py.test 1.x 仍然可以正常工作。
在测试运行期间,在页面右上角显示一个链接列表,以便跳转到对应于 JavaScript 测试文件或 Python 模块的输出部分。
各种内部清理和简化。
对文档进行了一些轻微的刷新和编辑。
修复了查找 jstests_setup 值的问题,以正确考虑 conftest.py 的链。
MochiKit 的使用实际上是实现细节,在测试中通过 __export__=false 默认导入它,这意味着仅 MochiKit 名称在全局(window)命名空间中定义,在 jstests_setup 中使用,以获得旧的行为。
class jstests_setup: MochiKit__export__ = True
。
0.8.9
可选地将服务器端如何表示测试将从中提供的 baseurl 的外观委托给服务器,这在使用 oejskit 进行功能测试时很有用,可以滥用代理。
将打包更改为仅提供源 tar 文件,这使得打包更容易。
需要 Python 2.6 或 2.7。
0.8.8
改进了用于跳过测试的浏览器存在性检查的代码,这意味着在浏览器规范中列出不存在的浏览器不应引发问题。
针对 FF3.5 中由全局变量泄漏检测代码触发的 bug 的解决方案,在 FF3.5 中没有泄漏检测 :(
0.8.7
通过文档提供对浏览器.py 服务器浏览器名称的灵活 user-defined-name=commandline 控制。
记录与标准库 unittest.py 的粘合剂。
当浏览器无法启动时,提供更好的错误报告。
使用 Python >=2.6 中的 json 模块,否则使用 simplejson。
将 py.test 插件移动到 oejskit 包中,通过 pytest11 setuptools 入口公开。
修复与 py.test 1.1.x 相关的仅限自己的测试问题和警告。
0.8.6
修复 py.test 1.0 最终兼容性问题。
对标准库 unittest.py 的实验性粘合剂(尚未提供文档)。
oejskit-0.9.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 06d645e2506acd85b8a858b550907c5c8440d4f1315fc2c4e6b86b091c29846e |
|
MD5 | 7f14ef269c7ffb7e6286f9df8812a273 |
|
BLAKE2b-256 | 1610f9d24c1f5ff7a8236e48d3c8fbd12e76eb4741e6f4e76e5c25c51d7ed7a9 |