boardfile内容类型
medialog.boardfile的Python项目详细描述
更改历史
********
这里的重点是测试用户可能输入和看到的内容,并且系统在很大程度上是作为一个黑盒进行测试的。
我们也使用plonetestcase来设置这个测试,因此我们有一个完整的plone站点可以使用。我们*可以*检查门户的状态,例如使用
self.portal和self.folder,但由于您没有将系统视为一个黑盒,因此常常会对它感到不快。另外,如果您使用self.set roles()之类的调用登录或设置
角色,这些不会反映在作为单独会话运行的测试浏览器中。
作为doctest,我们可以在这里讲述一个故事。
首先,我们必须执行一些设置。我们使用带有5个的testbrowser,因为它提供了正确的zope 2集成。不过,大多数
文档都在下面的zope.testbrower包中。
>;>;来自products.five.testbrowser import browser
>;>;browser=browser()
>;>;portal_url=self.portal.absolute_url()
编写和调试TestBrowser测试。它允许我们在错误日志中查看所有错误消息。
>>self.portal.error\u log.\u ignored\u exceptions=()
我们将使用plonetestcase中的默认用户:
>;>from products.plonetestcase.setup import portal_owner,default_password
>;>browser.open(portal_url)
r.getcontrol(name=''acu name').value=portal_owner
>;>browser.getcontrol(name=''acu password').value=default_password
>;>browser.getcontrol(name='submit').click()
单击。
然后,我们将测试是否仍在门户网站首页:
>;>;浏览器。url==portal_url
true
,我们将确保获得友好的登录消息:
>;>;"您现在已登录"浏览器。内容
true
-*-这里还有一些额外的内容-*-
发布内容类型
action content item
---------------------------
我们使用"添加新内容"菜单添加新内容项。
>;>;browser.getlink('add new')。单击()
然后选择要添加的项目类型。在这种情况下,我们选择
"publication"并单击"add"按钮以进入添加表单。
>;>;browser.getcontrol('publication')。单击浏览器中的
>;>;browser.getcontrol(name='form.button.add')。单击浏览器中的
>;'publication'。内容
true
现在我们填写并提交表单。
>;>browser.getcontrol(name='title').value='publication sample'
>;>browser.getcontrol('save').click()
>;'changes saved'在浏览器中。内容
true
我们完成了!我们在门户中添加了一个新的"发布"内容项。
更新现有的发布内容项
--------------------------
让我们单击"编辑"选项卡并更新对象属性值。
>;browser.getlink('edit')。单击()
>;>>browser.getcontrol(name='title').value='新出版物示例'
>;>>browser.getcontrol('save').click()
>我们检查更改是否已应用。
>;>;"已保存的更改"在浏览器中。内容
true
>;'new publication sample'在浏览器中。内容
true
"新出版物
sample"标题位于全局导航选项卡中。
>;>;浏览器。在浏览器中打开(门户网站URL)
>;>;"新出版物示例"。内容
true
首先,我们转到"内容"选项卡,选择"新出版物示例"进行删除。
>;>;browser.getlink('contents').click()
>;>;browser.getcontrol('new publication sample').click()
我们单击"删除"按钮。
>;&browser.getcontrol('delete')。在浏览器中单击()
>;>;'item(s)deleted'。内容
true
因此,如果返回主页,将不再有"新出版物
示例"选项卡。
>;>;浏览器。打开(门户网站URL)
>;'new publication s a浏览器中的"mple"。content s
false
添加一个新的发布内容项作为参与者
——在"贡献者"中,分配了
贡献者角色的门户成员。
>;>;browser.getlink('log out').click()
>;>;browser.open(门户URL)
>;>;browser.getcontrol(name='''uu ac''name').value='contributor'
>;>;browser.getcontrol(name=''uu ac_password')。value=default_password
>;>browser.getcontrol(name='submit')。click()
>;>browser.open(portal_url)
我们使用"添加新内容"菜单添加新内容项。
>;browser.getlink("添加新内容")。click()
选择"发布",然后单击"添加"按钮以进入添加表单。
>;>;browser.getcontrol('publication').click()
>;>;browser.getcontrol(name='form.button.add').click()
>;>;'publication'在浏览器中。contents
true
填写表单并提交。
>;>browser.getcontrol(name='title').value='publication sample'
>;>browser.getcontrol('save').click()
>;'changes saved'在浏览器中。contents
true
我们添加了一个以参与者身份登录的新出版物内容项。
最后,让我们以管理者身份重新登录。
>>browser.getlink('log out')。单击浏览器。打开(门户URL)
>>browser.getcontrol(name=''''uu ac''name')。value=portal''owner
>;>;browser.getcontrol(name=''uu ac_password').value=default_password
>;>;browser.getcontrol(name='submit').click()
>;>;browser.open(portal_url)
boardfile content type
=ion我们通过执行添加、更新和删除boardfile内容项等基本操作来测试boardfile内容类型。
>;gt;gt;browser.getlink('add new')。单击()
,然后选择要添加的项目类型。在这种情况下,我们选择
"boardfile",然后单击"添加"按钮进入添加表单。
>;>;browser.getcontrol('boardfile')。单击浏览器中的
>;>;browser.getcontrol(name='form.button.add')。单击浏览器中的
>;'boardfile'。内容
true
现在我们填写表格并提交。
>;>;浏览器。获取控件(名称='title')。值='boardfile sample'
>>>>>浏览器。getcontrol('save')。单击浏览器中的"
>>>已保存的更改"。内容
为真
我们就完成了!我们在门户中添加了一个新的"boardfile"内容项。
更新现有的boardfile内容项
--------------------------
让我们单击"编辑"选项卡并更新对象属性值。
>;browser.getlink('edit')。click()
>>>browser.getcontrol(name='title').value='新的boardfile sample'
>>>browser.getcontrol('save').click()
>我们检查更改是否已应用。
>>>在浏览器中"更改已保存"。contents
true
>;'新的boardfile sample'在浏览器中。contents
true
删除a/a boardfile内容项
>>>>在浏览器中显示"new boardfile sample"。contents
true
现在我们要删除"new boardfile sample"对象。首先,我们
转到"内容"选项卡,选择"新的boardfile sample"进行
删除。
>;>;browser.getlink('contents')。单击(
>;>);browser.getcontrol('new boardfile sample')。单击(
我们单击"删除"按钮。
>;浏览er.getcontrol('delete').click()
>;>;'item)deleted'在浏览器中。contents
true
所以,如果返回主页,就不再有"new boardfile
sample"选项卡。
>;>;浏览器。打开(门户网站URL)
>;'new boardfile sample'在browser.content s
false
添加一个新的boardfile内容项作为贡献者
——IButor",分配了
参与者角色的门户成员。
>;>;browser.getlink('log out').click()
>;>;browser.open(门户URL)
>;>;browser.getcontrol(name='''uu ac''name').value='contributor'
>;>;browser.getcontrol(name=''uu ac_password')。value=default_password
>>>;browser.getcontrol(name='submit')。click()
>>>;>;browser.open(portal_url)
我们使用"添加新内容"菜单添加新内容项。
>;browser.getlink('add new')。click()
我们选择"boa"rdfile'并单击"添加"按钮以进入添加表单。
>;>;browser.getcontrol('boardfile')。在浏览器中单击()
>;>;browser.getcontrol(name='form.button.add')。在浏览器中单击()
>;'boardfile'。内容
true
提交它。
>;>browser.getcontrol(name='title').value='boardfile sample'
>;>browser.getcontrol('save').click()
>;'changes saved'在浏览器中。内容
true
我们添加了一个以参与者身份登录的新boardfile内容项。
最后,让我们以管理者身份重新登录。
>;>;browser.getlink('log out').click()
>;>;browser.open(portal\&url)
>;>;browser.getcontrol(name=''uu ac\&u name').value=portal\&u owner
>;>>浏览器。getcontrol(name='''u ac_password')。value=default_password
>;>>浏览器。getcontrol(name='submit')。click()
>;>>浏览器。打开(门户网站URL)
*****
********
********
这里的重点是测试用户可能输入和看到的内容,并且系统在很大程度上是作为一个黑盒进行测试的。
我们也使用plonetestcase来设置这个测试,因此我们有一个完整的plone站点可以使用。我们*可以*检查门户的状态,例如使用
self.portal和self.folder,但由于您没有将系统视为一个黑盒,因此常常会对它感到不快。另外,如果您使用self.set roles()之类的调用登录或设置
角色,这些不会反映在作为单独会话运行的测试浏览器中。
作为doctest,我们可以在这里讲述一个故事。
首先,我们必须执行一些设置。我们使用带有5个的testbrowser,因为它提供了正确的zope 2集成。不过,大多数
文档都在下面的zope.testbrower包中。
>;>;来自products.five.testbrowser import browser
>;>;browser=browser()
>;>;portal_url=self.portal.absolute_url()
编写和调试TestBrowser测试。它允许我们在错误日志中查看所有错误消息。
>>self.portal.error\u log.\u ignored\u exceptions=()
我们将使用plonetestcase中的默认用户:
>;>from products.plonetestcase.setup import portal_owner,default_password
>;>browser.open(portal_url)
r.getcontrol(name=''acu name').value=portal_owner
>;>browser.getcontrol(name=''acu password').value=default_password
>;>browser.getcontrol(name='submit').click()
单击。
然后,我们将测试是否仍在门户网站首页:
>;>;浏览器。url==portal_url
true
,我们将确保获得友好的登录消息:
>;>;"您现在已登录"浏览器。内容
true
-*-这里还有一些额外的内容-*-
发布内容类型
action content item
---------------------------
我们使用"添加新内容"菜单添加新内容项。
>;>;browser.getlink('add new')。单击()
然后选择要添加的项目类型。在这种情况下,我们选择
"publication"并单击"add"按钮以进入添加表单。
>;>;browser.getcontrol('publication')。单击浏览器中的
>;>;browser.getcontrol(name='form.button.add')。单击浏览器中的
>;'publication'。内容
true
现在我们填写并提交表单。
>;>browser.getcontrol(name='title').value='publication sample'
>;>browser.getcontrol('save').click()
>;'changes saved'在浏览器中。内容
true
我们完成了!我们在门户中添加了一个新的"发布"内容项。
更新现有的发布内容项
--------------------------
让我们单击"编辑"选项卡并更新对象属性值。
>;browser.getlink('edit')。单击()
>;>>browser.getcontrol(name='title').value='新出版物示例'
>;>>browser.getcontrol('save').click()
>我们检查更改是否已应用。
>;>;"已保存的更改"在浏览器中。内容
true
>;'new publication sample'在浏览器中。内容
true
"新出版物
sample"标题位于全局导航选项卡中。
>;>;浏览器。在浏览器中打开(门户网站URL)
>;>;"新出版物示例"。内容
true
首先,我们转到"内容"选项卡,选择"新出版物示例"进行删除。
>;>;browser.getlink('contents').click()
>;>;browser.getcontrol('new publication sample').click()
我们单击"删除"按钮。
>;&browser.getcontrol('delete')。在浏览器中单击()
>;>;'item(s)deleted'。内容
true
因此,如果返回主页,将不再有"新出版物
示例"选项卡。
>;>;浏览器。打开(门户网站URL)
>;'new publication s a浏览器中的"mple"。content s
false
添加一个新的发布内容项作为参与者
——在"贡献者"中,分配了
贡献者角色的门户成员。
>;>;browser.getlink('log out').click()
>;>;browser.open(门户URL)
>;>;browser.getcontrol(name='''uu ac''name').value='contributor'
>;>;browser.getcontrol(name=''uu ac_password')。value=default_password
>;>browser.getcontrol(name='submit')。click()
>;>browser.open(portal_url)
我们使用"添加新内容"菜单添加新内容项。
>;browser.getlink("添加新内容")。click()
选择"发布",然后单击"添加"按钮以进入添加表单。
>;>;browser.getcontrol('publication').click()
>;>;browser.getcontrol(name='form.button.add').click()
>;>;'publication'在浏览器中。contents
true
填写表单并提交。
>;>browser.getcontrol(name='title').value='publication sample'
>;>browser.getcontrol('save').click()
>;'changes saved'在浏览器中。contents
true
我们添加了一个以参与者身份登录的新出版物内容项。
最后,让我们以管理者身份重新登录。
>>browser.getlink('log out')。单击浏览器。打开(门户URL)
>>browser.getcontrol(name=''''uu ac''name')。value=portal''owner
>;>;browser.getcontrol(name=''uu ac_password').value=default_password
>;>;browser.getcontrol(name='submit').click()
>;>;browser.open(portal_url)
boardfile content type
=ion我们通过执行添加、更新和删除boardfile内容项等基本操作来测试boardfile内容类型。
>;gt;gt;browser.getlink('add new')。单击()
,然后选择要添加的项目类型。在这种情况下,我们选择
"boardfile",然后单击"添加"按钮进入添加表单。
>;>;browser.getcontrol('boardfile')。单击浏览器中的
>;>;browser.getcontrol(name='form.button.add')。单击浏览器中的
>;'boardfile'。内容
true
现在我们填写表格并提交。
>;>;浏览器。获取控件(名称='title')。值='boardfile sample'
>>>>>浏览器。getcontrol('save')。单击浏览器中的"
>>>已保存的更改"。内容
为真
我们就完成了!我们在门户中添加了一个新的"boardfile"内容项。
更新现有的boardfile内容项
--------------------------
让我们单击"编辑"选项卡并更新对象属性值。
>;browser.getlink('edit')。click()
>>>browser.getcontrol(name='title').value='新的boardfile sample'
>>>browser.getcontrol('save').click()
>我们检查更改是否已应用。
>>>在浏览器中"更改已保存"。contents
true
>;'新的boardfile sample'在浏览器中。contents
true
删除a/a boardfile内容项
>>>>在浏览器中显示"new boardfile sample"。contents
true
现在我们要删除"new boardfile sample"对象。首先,我们
转到"内容"选项卡,选择"新的boardfile sample"进行
删除。
>;>;browser.getlink('contents')。单击(
>;>);browser.getcontrol('new boardfile sample')。单击(
我们单击"删除"按钮。
>;浏览er.getcontrol('delete').click()
>;>;'item)deleted'在浏览器中。contents
true
所以,如果返回主页,就不再有"new boardfile
sample"选项卡。
>;>;浏览器。打开(门户网站URL)
>;'new boardfile sample'在browser.content s
false
添加一个新的boardfile内容项作为贡献者
——IButor",分配了
参与者角色的门户成员。
>;>;browser.getlink('log out').click()
>;>;browser.open(门户URL)
>;>;browser.getcontrol(name='''uu ac''name').value='contributor'
>;>;browser.getcontrol(name=''uu ac_password')。value=default_password
>>>;browser.getcontrol(name='submit')。click()
>>>;>;browser.open(portal_url)
我们使用"添加新内容"菜单添加新内容项。
>;browser.getlink('add new')。click()
我们选择"boa"rdfile'并单击"添加"按钮以进入添加表单。
>;>;browser.getcontrol('boardfile')。在浏览器中单击()
>;>;browser.getcontrol(name='form.button.add')。在浏览器中单击()
>;'boardfile'。内容
true
提交它。
>;>browser.getcontrol(name='title').value='boardfile sample'
>;>browser.getcontrol('save').click()
>;'changes saved'在浏览器中。内容
true
我们添加了一个以参与者身份登录的新boardfile内容项。
最后,让我们以管理者身份重新登录。
>;>;browser.getlink('log out').click()
>;>;browser.open(portal\&url)
>;>;browser.getcontrol(name=''uu ac\&u name').value=portal\&u owner
>;>>浏览器。getcontrol(name='''u ac_password')。value=default_password
>;>>浏览器。getcontrol(name='submit')。click()
>;>>浏览器。打开(门户网站URL)