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)







*****


********

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何实现出站http响应和后续出站http请求之间的特定间隔   java QueryDSL查找在一天中的某个时间发生的多天事件   java我可以使用ApachePivot而不是Swing吗?   java中的安卓 studio调用方法,没有对象或类名   包含GUI类型实例的java停止EDT   具有复合主键的JavaSpring数据rest   JavaJScrollPane不会在JPanel上滚动   Java如何通过值初始化方法内部的HashMap   csv Java二进制文件格式并没有大大减小文件大小   java LibGDX Box2D防止对象在跳跃后减速   java Android:如何停止所有媒体播放器   主要是字符串之间有什么区别。。。Java中的args和String[]args?   java如何重用jframe而不使其成为新的?   java为什么我的计划作业不能并行执行   java将Osgi项目中的WebSocket与Atmosphere集成