用于测试JavaScript(可选WSGI)UI的WSGI+Webdriver
项目描述
用于测试JavaScript(可选WSGI)UI的WSGI+Webdriver
此包提供了一些用于使用Python、Selenium Webdriver、Manuel和WSGI测试JavaScript(可选WSGI)应用程序的帮助程序。
该包提供以下功能
- setUp(test, app)
一个用于设置webdriver的doctest setUp函数
将webdriver设置为浏览器变量。
默认情况下,使用Chrome浏览器驱动。您可以通过两种方式覆盖此设置:
在SELENIUM_DRIVER环境变量中定义驱动程序,或者
在测试脚本中调用get_factory_argument函数以解析-b选项的参数,通常在调用通常解析参数的逻辑之前。
此选项的值是驱动程序定义。
函数定义
- get_factory_argument(argv=sys.argv, option='-b')
解析浏览器定义的参数。
驱动程序定义可以是以下驱动程序名称之一:chrome firefox ie opera 或 phantomjs。它还可以是远程驱动程序规范。远程驱动程序规范的形式为
browserName,version,platform,command_executor
例如
internet explorer,10,Windows 8
右侧的项可以省略。在上面的示例中,我们省略了命令执行器。如果不提供选项中的命令执行器,则必须通过SELENIUM_REMOTE_COMMAND_EXECUTOR环境变量提供。
请注意,为了使用没有指定其他任何内容的firefox作为远程浏览器,您需要提供一个尾随逗号以防止将其视为名称。
设置服务器以提供WSGI应用程序。
设置两种JavaScript doctest示例口味
- js> 示例
用于在浏览器中评估JavaScript表达式。
- 重要提示
这仅应与表达式一起使用。与多个语句一起使用可能会产生错误或奇怪的结果。这是通过简单地取源提供的内容,将其放在前面并调用 Webdriver 的 execute_script 方法来实现的。
- js! 示例
用于在不返回任何内容的情况下在浏览器中执行 JavaScript 代码。这对于代码块来说效果很好。提供的源代码传递给 Webdriver 的 execute_script 方法。
- 重要提示
使用 function 语句定义的函数不在 JavaScript 全局作用域中。要定义全局函数,请使用类似以下的方法:
global_name = function () {...}
您还可以使用 Webdriver(《browser》)的 execute_script 方法从 Python 示例中执行 JavaScript 代码。以这种方式调用 JavaScript 时,请注意以下异常情况:
通过 function 语句定义的函数可以在代码块中使用,但不是全局的。要定义全局函数,将匿名函数分配给全局变量。
除非代码块包含返回语句,否则不会返回任何值。
包括来自 zope.testing.wait 的 wait 函数,该函数等待条件成立。
该函数接受一个额外的参数(在测试参数之后),命名为 app,它提供了一个 WSGI 应用程序对象。
- start_server(app, port=0, daemon=True)
一个可用于在没有运行测试的情况下运行测试服务器的函数。
参数
- app
一个 WSGI 应用程序对象
- port
要监听的端口。如果为 0(默认值),则端口会动态分配并返回。
- daemon
守护进程模式。这可以是 True、False 或 None。
如果为 None,则服务器将在前台运行并阻塞调用者。
如果为 True 或 False,则服务器将在线程中运行,其守护进程模式设置为该参数的值。
- html(css=(), scripts=(), title="test", body="<body></body>")
返回一个带有 CSS 链接、脚本标签以及给定标题和体标签的 HTML 页面。
当您想要一个基本上为空的 HTML 页面并加载要测试的 JavaScript 时,这很有用。
- css
一组 CSS URL。
- scripts
一组脚本定义。
每个定义是以下之一
脚本 URL
脚本标签(以 “<” 开头)
脚本 JavaScript 源代码(包含至少一个换行符)
- title
页面标题的内容
- body
文档的主体。
- manuels(optionflags=0, checker=None)
返回一个用于 Python、JavaScript 和捕获的 manuel 解析器。
- TestSuite(*tests, **options)
一个函数,它接受一个或多个 doctest/manuel 文件名和测试标志,如 setUp、tearDown、optionflags 和 checker,并返回一个 doctest 测试套件。
您可以传递一个 app 关键字参数,而不是传递 setUp 和 tearDown。
请参阅随包提供的示例测试。
变更
0.1.0 (2013-08-31)
首次发布
项目详情
zc.wsgidriver-0.1.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 85c47dafab29a128ecc41792cdf8f888ab8f0899b56accf76dbe390bb63034da |
|
MD5 | 5b9d432000fecd586e227ce9c6353867 |
|
BLAKE2b-256 | 930a17fe0da0027a522f0b281ebc8469a50e55ca7f894082acf0002ebaa3eb57 |