Plone的Selenium测试支持
项目描述
简介
此软件包提供了一种PloneTestCase样式的类,用于运行Selenium测试。
它要求您在测试运行时运行Selenium RC(http://selenium-rc.openqa.org)。当前版本的Python 'selenium'库(这是此包的自动安装依赖项)似乎与Selenium RC 0.9.2配合得最好。下载后,使用以下命令运行:
$ java -jar selenium-server.jar
请参阅test_example.py,了解如何设置Plone站点并运行简单测试的示例。
请参阅testcase.py,了解更多关于SeleniumTestCase基类中包含的便捷方法和它用来配置Selenium的层的详细信息。如果您需要更仔细地管理Selenium Server信息,您可能想要使用从这个层派生出的自定义层。
请注意,您可以通过设置以下环境变量来影响Selenium驱动程序查找Selenium RC服务器的地方
SELENIUM_HOST,主机名(默认为“localhost”)
SELENIUM_PORT,端口(默认为“localhost”)
SELENIUM_BROWSER,要启动的浏览器(默认为“*chrome”)
使用方法
一个简单的测试用例可能看起来像这样
from collective.ploneseltest import SeleniumTestCase class DocumentTestCase(SeleniumTestCase): def afterSetUp(self): """Setup for each test """ self.setRoles(['Manager']) self.login_user() def test_create_document(self): self.selenium.click("//dl[@id='plone-contentmenu-factories']/dt/a/span[1]") self.selenium.click("document") self.wait() self.selenium.type("title", "Some document") self.selenium.click("name=form_submit") self.wait() self.failUnless(self.selenium.is_text_present("Some document"))
省略了常规的测试设置和套件样板。
请参阅 http://selenium-rc.openqa.org/python.html 获取有关可用客户端命令的更多信息。您可能还对 http://selenium-ide.openqa.org 感兴趣。
注意事项
可以在 afterSetUp() 方法中设置状态,例如:
def afterSetUp(self): self.setRoles(['Manager']) ...
但是,在开始运行 Selenium 命令之前,应明确提交所有更改
import transaction ; transaction.commit()
为了使这更容易,有一个方便的 self.open() 方法。这将打开 Plone 网站或其内的页面。在进行操作之前将执行提交,以防有未提交的更改。
请注意,self.open() 由 self.login_user() 使用,因此为了以登录的管理员用户身份启动每个测试,您会这样做:
def afterSetUp(self): """Setup for each test """ self.setRoles(['Manager']) self.login_user()
变更日志
1.0b2
修复了当 selenium 会启动两次的 bug [Domen Kozar]
1.0b1
初始发布
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪一个,请了解更多关于 安装包 的信息。
源分布
构建分布
collective.ploneseltest-1.0b2.tar.gz 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 9a784c6edc7b18c0e43f556473e0be073b46cbb80d4d49b4730d173a337390d5 |
|
MD5 | 432ed45a53060a3f113001e347b9dbc4 |
|
BLAKE2b-256 | 3ab31d5639dc5c13d6c06d734e7259a300fef432124890cdfa0ea796f0dbd175 |
collective.ploneseltest-1.0b2-py2.5.egg 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b297b0a055455fc0cd45eab3f3d2355e7941e43e0521968773ddba354747242b |
|
MD5 | 6de6e0ae8647b0bc05cc625f121d1517 |
|
BLAKE2b-256 | 9ae8ad3b11e05789de9144d5f29786faa15bf147c2139d34df89dea04d0a3fea |