b-open at内容类型用于plone
bopen.atcontenttypes的Python项目详细描述
*********************************
b-在plone的内容类型处打开内容:
-主页:http://www.bopen.eu/open-source/bopen.atcontenttypes
-代码存储库:http://github.com/bopen/bopen.atcontenttypes
美国东部时间。这里的重点是测试用户可能输入和看到的内容,并且系统在很大程度上是作为一个黑盒进行测试的。
我们也使用plonetestcase来设置这个测试,因此我们有一个完整的plone站点可以使用。我们*可以*检查门户的状态,例如使用
self.portal和self.folder,但由于您没有将系统视为一个黑盒,因此常常会对它感到不快。另外,如果您使用self.set roles()之类的调用登录或设置
角色,这些不会反映在作为单独会话运行的测试浏览器中。
作为doctest,我们可以在这里讲述一个故事。
首先,我们必须执行一些设置。我们使用带有5个的testbrowser,因为它提供了正确的zope 2集成。不过,大多数
文档都在下面的zope.testbrower包中。
>>正在测试和调试TestBrowser测试。它允许我们在错误日志中查看所有错误消息。
>>self.portal.error\u log.\u ignored\u exceptions=()
我们将使用plonetestcase中的默认用户:
>;>from products.plonetestcase.setup import portal_owner,default_password
因为附加主题或产品可能删除或隐藏登录Portlet,因此此测试将使用plone附带的登录表单。
>;>browser.open(portal_url+'/login_form')
>;>browser.getcontrol(name='''u ac_name').value=portal_owner
>;>browser.getcontrol(name='''''u ac_password').value=default_password
>;>browser.getcontrol(name='submit').click()
在这里,我们设置登录表单上字段的值,然后模拟
提交单击。然后,我们将确保获得友好的登录消息:
>;>;"您现在已登录"在浏览器中。内容
true
在这里-*-
RichFolder内容类型
==
在本节中,我们通过执行添加、更新和删除RichFolder内容
项等基本操作来测试RichFolder内容类型。
------------
我们使用"添加新内容"菜单添加新的内容项。
>;>;browser.getlink('add new')。单击()
在这种情况下,我们选择
"richfolder",然后单击"添加"按钮进入添加表单。
>;>;browser.getcontrol('richfolder')。单击浏览器中的
>;>;browser.getcontrol(name='form.button.add')。单击浏览器中的
>;'richfolder'。内容
true
现在我们填写并提交表单。
>;>browser.getcontrol(name='title').value='richfolder sample'
>;>browser.getcontrol('save').click()
>;'changes saved'在浏览器中。内容
true
我们完成了!我们向门户添加了一个新的"richfolder"内容项。
更新现有的richfolder内容项单击"编辑"选项卡并更新对象属性值。
>;>;browser.getlink('edit')。click()
>;>;browser.getcontrol(name='title')。value='新建richfolder示例'
>;>;browser.getcontrol('save')。click()
已应用。
>;>;"已保存的更改"在浏览器中。内容
true
>;'new richfolder sample'在浏览器中。内容
true
在全局导航选项卡中带有"new richfolder
sample"标题的选项卡。在浏览器中打开(门户网站URL)
>;'new richfolder sample'。内容
true
首先,我们
转到"内容"选项卡并选择"新建RichFolder示例"进行
删除。
>;>;browser.getLink('contents').click()
>;>;browser.getControl('new RichFolder示例')。单击()
我们单击"删除"按钮。
>;browser.getcontrol('delete')。在浏览器中单击()
>;'item(s)deleted'。内容
true
so,如果返回主页,将不再有"new richfolder
sample"选项卡。
>;>;浏览器。打开(门户网站URL)
>;'new richfolder sample'在浏览器中。内容
false
"参与者",分配了
参与者角色的门户成员。
>;>;browser.getlink("注销").click()
>;>;>;browser.open(门户URL+"/登录表单")
>;>;browser.getcontrol(name='''uu ac\'name').value='参与者'
>;>;browser.getcontrol(name=''uu ac_password').value=默认的_password
>;>browser.getcontrol(name='submit').click()
>;>browser.open(portal_url)
我们使用"添加新内容"菜单添加新内容项。
>;browser.getlink('add new').click()
我们选择"richfolder"并单击"添加"按钮以进入添加表单。
>;>;browser.getcontrol("richfolder")。单击浏览器中的"
>">;>;browser.getcontrol(name="form.button.add")。单击浏览器中的"
>">;"richfolder"。内容
true
no我们填写表格并提交。
>;>browser.getcontrol(name='title').value='richfolder sample'
>;>browser.getcontrol('save').click()
>;'changes saved'在浏览器中。内容
true
我们添加了一个新的richfolder内容项,作为参与者登录。
最后,让我们以管理者身份重新登录。
>;>;browser.getlink('log out').click()
>;>;browser.open(portal\'url+'/log in\'form')
>;>;browser.getcontrol(name='''uu ac\'name').value=门户所有者
>;>browser.getcontrol(name=''''uuu ac''u password')。value=默认密码
>;>browser.getcontrol(name='submit')。单击()
>;>browser.open(门户URL)
b-在plone的内容类型处打开内容:
-主页:http://www.bopen.eu/open-source/bopen.atcontenttypes
-代码存储库:http://github.com/bopen/bopen.atcontenttypes
美国东部时间。这里的重点是测试用户可能输入和看到的内容,并且系统在很大程度上是作为一个黑盒进行测试的。
我们也使用plonetestcase来设置这个测试,因此我们有一个完整的plone站点可以使用。我们*可以*检查门户的状态,例如使用
self.portal和self.folder,但由于您没有将系统视为一个黑盒,因此常常会对它感到不快。另外,如果您使用self.set roles()之类的调用登录或设置
角色,这些不会反映在作为单独会话运行的测试浏览器中。
作为doctest,我们可以在这里讲述一个故事。
首先,我们必须执行一些设置。我们使用带有5个的testbrowser,因为它提供了正确的zope 2集成。不过,大多数
文档都在下面的zope.testbrower包中。
>>正在测试和调试TestBrowser测试。它允许我们在错误日志中查看所有错误消息。
>>self.portal.error\u log.\u ignored\u exceptions=()
我们将使用plonetestcase中的默认用户:
>;>from products.plonetestcase.setup import portal_owner,default_password
因为附加主题或产品可能删除或隐藏登录Portlet,因此此测试将使用plone附带的登录表单。
>;>browser.open(portal_url+'/login_form')
>;>browser.getcontrol(name='''u ac_name').value=portal_owner
>;>browser.getcontrol(name='''''u ac_password').value=default_password
>;>browser.getcontrol(name='submit').click()
在这里,我们设置登录表单上字段的值,然后模拟
提交单击。然后,我们将确保获得友好的登录消息:
>;>;"您现在已登录"在浏览器中。内容
true
在这里-*-
RichFolder内容类型
==
在本节中,我们通过执行添加、更新和删除RichFolder内容
项等基本操作来测试RichFolder内容类型。
------------
我们使用"添加新内容"菜单添加新的内容项。
>;>;browser.getlink('add new')。单击()
在这种情况下,我们选择
"richfolder",然后单击"添加"按钮进入添加表单。
>;>;browser.getcontrol('richfolder')。单击浏览器中的
>;>;browser.getcontrol(name='form.button.add')。单击浏览器中的
>;'richfolder'。内容
true
现在我们填写并提交表单。
>;>browser.getcontrol(name='title').value='richfolder sample'
>;>browser.getcontrol('save').click()
>;'changes saved'在浏览器中。内容
true
我们完成了!我们向门户添加了一个新的"richfolder"内容项。
更新现有的richfolder内容项单击"编辑"选项卡并更新对象属性值。
>;>;browser.getlink('edit')。click()
>;>;browser.getcontrol(name='title')。value='新建richfolder示例'
>;>;browser.getcontrol('save')。click()
已应用。
>;>;"已保存的更改"在浏览器中。内容
true
>;'new richfolder sample'在浏览器中。内容
true
在全局导航选项卡中带有"new richfolder
sample"标题的选项卡。在浏览器中打开(门户网站URL)
>;'new richfolder sample'。内容
true
首先,我们
转到"内容"选项卡并选择"新建RichFolder示例"进行
删除。
>;>;browser.getLink('contents').click()
>;>;browser.getControl('new RichFolder示例')。单击()
我们单击"删除"按钮。
>;browser.getcontrol('delete')。在浏览器中单击()
>;'item(s)deleted'。内容
true
so,如果返回主页,将不再有"new richfolder
sample"选项卡。
>;>;浏览器。打开(门户网站URL)
>;'new richfolder sample'在浏览器中。内容
false
"参与者",分配了
参与者角色的门户成员。
>;>;browser.getlink("注销").click()
>;>;>;browser.open(门户URL+"/登录表单")
>;>;browser.getcontrol(name='''uu ac\'name').value='参与者'
>;>;browser.getcontrol(name=''uu ac_password').value=默认的_password
>;>browser.getcontrol(name='submit').click()
>;>browser.open(portal_url)
我们使用"添加新内容"菜单添加新内容项。
>;browser.getlink('add new').click()
我们选择"richfolder"并单击"添加"按钮以进入添加表单。
>;>;browser.getcontrol("richfolder")。单击浏览器中的"
>">;>;browser.getcontrol(name="form.button.add")。单击浏览器中的"
>">;"richfolder"。内容
true
no我们填写表格并提交。
>;>browser.getcontrol(name='title').value='richfolder sample'
>;>browser.getcontrol('save').click()
>;'changes saved'在浏览器中。内容
true
我们添加了一个新的richfolder内容项,作为参与者登录。
最后,让我们以管理者身份重新登录。
>;>;browser.getlink('log out').click()
>;>;browser.open(portal\'url+'/log in\'form')
>;>;browser.getcontrol(name='''uu ac\'name').value=门户所有者
>;>browser.getcontrol(name=''''uuu ac''u password')。value=默认密码
>;>browser.getcontrol(name='submit')。单击()
>;>browser.open(门户URL)