显示在线店面
wwp.shopfronts的Python项目详细描述
…内容:
…音符!
----
更新以下URL以指向您的:
-代码库
-错误跟踪器
-问题/评论反馈邮件
(不要设置真正的邮件,以避免垃圾邮件)
如果不使用,请将其删除。
-代码存储库:http://svn.somewhere.com/…
-问题和对某个邮件列表的评论
-在http://bug.somewhere.com/上报告错误。
更改历史记录r/>==
0.3(xx xx xx xx)
———————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————===
这是一个全面的功能测试。这里的重点是测试用户可能输入和看到的内容,并且系统在很大程度上是作为一个黑盒进行测试的。
我们也使用plonetestcase来设置这个测试,因此我们有一个完整的plone站点可以使用。我们*可以*检查门户的状态,例如使用
self.portal和self.folder,但由于您没有将系统视为一个黑盒,因此常常会对它感到不快。此外,如果您使用self.set roles()之类的调用登录或设置
角色,这些不会反映在作为单独会话运行的测试
浏览器中。
作为doctest,我们可以在这里讲述一个故事。
一些设置。我们使用带有5个的testbrowser,因为它提供了正确的zope 2集成。不过,大部分
文档都在下面的zope.testbrower包中。
>>>;来自products.five.testbrowser导入浏览器
在编写和调试testbrowser测试时,以下内容非常有用。它允许我们在错误日志中查看所有错误消息。
>>self.portal.error\u log.\u ignored\u exceptions=()
我们将使用plonetestcase的默认用户
>;>;从products.plonetestcase.setup import portal_owner,default_password
>;>;浏览器。打开(portal_url)
让我们使用它。
>;>;browser.getcontrol(name='''uu ac''u name').value=portal''u owner
>;>;browser.getcontrol(name='''uu ac''u password').value=default''u password
>;>;browser.getcontrol(name='submit').click()
,我们在登录表单上设置字段的值,然后模拟
提交单击。
我们收到友好的登录消息:
>;>;>;"您现在已登录"在浏览器中。内容
true
-*-这里有额外的内容-*-
街景内容类型
==/>
在本节中,我们通过执行添加、更新和删除街景内容等基本操作来测试街景内容类型
项目。
---————
在这种情况下,我们选择
"街景",然后单击"添加"按钮进入"添加"窗体。
>;>;browser.getcontrol("街景")。单击b中的browser.getcontrol(name="form.button.add').click()
>;"街景"rowser.contents
true
现在我们填写表单并提交它。
>;browser.getcontrol(name='title')。value='street\u view sample'
>;>;browser.getcontrol('save')。click()
>;'changes saved'在b中rowser.contents
true
我们完成了!我们在门户网站中添加了一个新的"街景"内容项。
更新现有的街景内容项>;>>browser.getlink('edit').click()
>;>>browser.getcontrol(name='title').value='new street\view sample'
>;>>browser.getcontrol('save').click()
我们检查是否应用了更改。
>;浏览器中的"已保存的更改"。浏览器中的"新建街道视图示例"内容
true
>;。如果转到主页,则内容
e,我们可以在全局导航选项卡中看到一个标题为"new street\u view
sample"的选项卡。
>;>browser.open(portal\u url)
>;>browser中的"new street\u view sample"。contents
true
删除"new street\u view sample"对象。首先,我们
转到"内容"选项卡,选择"新建街道视图示例"进行
删除。
>;>;browser.getlink('contents').click()
>;>;browser.getcontrol('new street\u view sample').click()
"删除"按钮。
>;>browser.getcontrol('delete').click()
>;'item(s)deleted'在浏览器中。内容
true
所以,如果我们回到主页,就不再有"new street\u view
sample"选项卡。
>;>;浏览器。在浏览器中打开(门户网站URL)
>;>;"新建街道视图示例"。内容
false
不仅允许站点管理员添加街景内容项,而且还允许站点贡献者添加街景内容项。
让我们注销,然后以"贡献者"身份登录,这是一个分配了
贡献者角色的门户成员。
>;。>;browser.getlink('注销').click()
>;>browser.open(portal_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()
d'按钮进入添加表单。
>>>gt;browser.getcontrol('street\u view')。click()
>>>gt;browser.getcontrol(name='form.button.add')。click()
>>>gt;'street\u view'在浏览器中。contents
true
现在我们填写表单并提交它。
>;browser.getcontrol(name='title')。value='street_view sample'
>>>>browser.getcontrol('save').click()
>>>在浏览器中"更改已保存"。contents
true
完成!我们添加了一个以参与者身份登录的新街景内容项。
最后,让我们以管理者身份重新登录。
>;>;browser.getlink('log out')。单击()
>;>;浏览器。打开(门户URL)
>;>;浏览器。getcontrol(name='''uu ac'.value=portal'.owner
>>>browser.getcontrol(name='''u ac_password').value=default_password
>>>browser.getcontrol(name='submit').click()
>>>>browser.open(portal_url)
shop_front content type
=通过执行添加、更新和删除店面内容
项目等基本操作来重新测试店面内容类型。
添加新的店面内容项目
>;>;browser.getlink('add new')。单击()
然后选择要添加的项目类型。在这种情况下,我们选择
"Shop撸front",然后单击"Add"按钮进入"Add"窗体。
>;>;browser.getcontrol("Shop撸front")。单击浏览器.getcontrol(name="form.button.add")。在浏览器中单击()
>;"Shop撸front"。内容
true
现在我们填写并提交表单。
>;>browser.getcontrol(name='title').value='shop_front sample'
>;>browser.getcontrol('save').click()
>;>changes saved'在浏览器中。内容
true
我们在门户中添加了一个新的"店面"内容项。
更新现有的店面内容项>;>>browser.getcontrol(name='title').value='新店铺前台示例'
>;>>browser.getcontrol('save').click()
>我们检查是否应用了更改。
>;'已在浏览器中保存更改'。内容
true
>;'新店铺前台示例'在浏览器中。内容
true
删除店铺前台内容项
rtal_url)
>;>>浏览器中的"new shop_front sample"。contents
true
现在我们要删除"new shop_front sample"对象。首先,我们
转到"内容"选项卡,选择"新建店铺前台示例"进行
删除。
>;>;browser.getlink('contents').click()
>;>;browser.getcontrol("新建店铺前台示例")。单击()
t;gt;浏览器.getcontrol('delete')。在浏览器中单击()
>;>;'item(s)deleted'。内容
true
因此,如果返回主页,将不再有"new shop\u front
sample"选项卡。
>;>;浏览器。打开(门户网站URL)
>>>>在浏览器中显示"New Shop_Front Sample"。内容
false
项目,但
也包括网站贡献者。
让我们注销,然后以"贡献者"身份登录,这是一个分配了
贡献者角色的门户成员。
>;>;browser.getlink("注销")。单击()
>;>;browser.open(portal_url)
>;>browser.getcontrol(name=''uu ac_name').value='contributor'
>;>browser.getcontrol(name=''uu ac_password').value=默认的_密码
>;>browser.getcontrol(name='submit').click()
>;>browser.open(portal_u url)
.getcontrol('shop_front')。click()
>>gt;browser.getcontrol(name='form.button.add')。click()
>>gt;'shop戋front'在browser.contents
true
现在我们填写并提交表单。
>;browser.getcontrol(name='title').value='shop_front sample'
>;>>browser.getcontrol('save').click()
>;>>在浏览器中保存的更改。contents
true
我们添加了一个新的店铺前台内容项目,作为参与者登录。
=''uu ac_name').value=portal_owner
>;>>浏览器.getcontrol(name=''uu ac_password').value=default_password
>;>>浏览器.getcontrol(name='submit').click()
>;>>浏览器.打开(portal_url)
投稿人
********
peter dyson,作者
********
…音符!
----
更新以下URL以指向您的:
-代码库
-错误跟踪器
-问题/评论反馈邮件
(不要设置真正的邮件,以避免垃圾邮件)
如果不使用,请将其删除。
-代码存储库:http://svn.somewhere.com/…
-问题和对某个邮件列表的评论
-在http://bug.somewhere.com/上报告错误。
更改历史记录r/>==
0.3(xx xx xx xx)
———————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————===
这是一个全面的功能测试。这里的重点是测试用户可能输入和看到的内容,并且系统在很大程度上是作为一个黑盒进行测试的。
我们也使用plonetestcase来设置这个测试,因此我们有一个完整的plone站点可以使用。我们*可以*检查门户的状态,例如使用
self.portal和self.folder,但由于您没有将系统视为一个黑盒,因此常常会对它感到不快。此外,如果您使用self.set roles()之类的调用登录或设置
角色,这些不会反映在作为单独会话运行的测试
浏览器中。
作为doctest,我们可以在这里讲述一个故事。
一些设置。我们使用带有5个的testbrowser,因为它提供了正确的zope 2集成。不过,大部分
文档都在下面的zope.testbrower包中。
>>>;来自products.five.testbrowser导入浏览器
在编写和调试testbrowser测试时,以下内容非常有用。它允许我们在错误日志中查看所有错误消息。
>>self.portal.error\u log.\u ignored\u exceptions=()
我们将使用plonetestcase的默认用户
>;>;从products.plonetestcase.setup import portal_owner,default_password
>;>;浏览器。打开(portal_url)
让我们使用它。
>;>;browser.getcontrol(name='''uu ac''u name').value=portal''u owner
>;>;browser.getcontrol(name='''uu ac''u password').value=default''u password
>;>;browser.getcontrol(name='submit').click()
,我们在登录表单上设置字段的值,然后模拟
提交单击。
我们收到友好的登录消息:
>;>;>;"您现在已登录"在浏览器中。内容
true
-*-这里有额外的内容-*-
街景内容类型
==/>
在本节中,我们通过执行添加、更新和删除街景内容等基本操作来测试街景内容类型
项目。
---————
在这种情况下,我们选择
"街景",然后单击"添加"按钮进入"添加"窗体。
>;>;browser.getcontrol("街景")。单击b中的browser.getcontrol(name="form.button.add').click()
>;"街景"rowser.contents
true
现在我们填写表单并提交它。
>;browser.getcontrol(name='title')。value='street\u view sample'
>;>;browser.getcontrol('save')。click()
>;'changes saved'在b中rowser.contents
true
我们完成了!我们在门户网站中添加了一个新的"街景"内容项。
更新现有的街景内容项>;>>browser.getlink('edit').click()
>;>>browser.getcontrol(name='title').value='new street\view sample'
>;>>browser.getcontrol('save').click()
我们检查是否应用了更改。
>;浏览器中的"已保存的更改"。浏览器中的"新建街道视图示例"内容
true
>;。如果转到主页,则内容
e,我们可以在全局导航选项卡中看到一个标题为"new street\u view
sample"的选项卡。
>;>browser.open(portal\u url)
>;>browser中的"new street\u view sample"。contents
true
删除"new street\u view sample"对象。首先,我们
转到"内容"选项卡,选择"新建街道视图示例"进行
删除。
>;>;browser.getlink('contents').click()
>;>;browser.getcontrol('new street\u view sample').click()
"删除"按钮。
>;>browser.getcontrol('delete').click()
>;'item(s)deleted'在浏览器中。内容
true
所以,如果我们回到主页,就不再有"new street\u view
sample"选项卡。
>;>;浏览器。在浏览器中打开(门户网站URL)
>;>;"新建街道视图示例"。内容
false
不仅允许站点管理员添加街景内容项,而且还允许站点贡献者添加街景内容项。
让我们注销,然后以"贡献者"身份登录,这是一个分配了
贡献者角色的门户成员。
>;。>;browser.getlink('注销').click()
>;>browser.open(portal_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()
d'按钮进入添加表单。
>>>gt;browser.getcontrol('street\u view')。click()
>>>gt;browser.getcontrol(name='form.button.add')。click()
>>>gt;'street\u view'在浏览器中。contents
true
现在我们填写表单并提交它。
>;browser.getcontrol(name='title')。value='street_view sample'
>>>>browser.getcontrol('save').click()
>>>在浏览器中"更改已保存"。contents
true
完成!我们添加了一个以参与者身份登录的新街景内容项。
最后,让我们以管理者身份重新登录。
>;>;browser.getlink('log out')。单击()
>;>;浏览器。打开(门户URL)
>;>;浏览器。getcontrol(name='''uu ac'.value=portal'.owner
>>>browser.getcontrol(name='''u ac_password').value=default_password
>>>browser.getcontrol(name='submit').click()
>>>>browser.open(portal_url)
shop_front content type
=通过执行添加、更新和删除店面内容
项目等基本操作来重新测试店面内容类型。
添加新的店面内容项目
>;>;browser.getlink('add new')。单击()
然后选择要添加的项目类型。在这种情况下,我们选择
"Shop撸front",然后单击"Add"按钮进入"Add"窗体。
>;>;browser.getcontrol("Shop撸front")。单击浏览器.getcontrol(name="form.button.add")。在浏览器中单击()
>;"Shop撸front"。内容
true
现在我们填写并提交表单。
>;>browser.getcontrol(name='title').value='shop_front sample'
>;>browser.getcontrol('save').click()
>;>changes saved'在浏览器中。内容
true
我们在门户中添加了一个新的"店面"内容项。
更新现有的店面内容项>;>>browser.getcontrol(name='title').value='新店铺前台示例'
>;>>browser.getcontrol('save').click()
>我们检查是否应用了更改。
>;'已在浏览器中保存更改'。内容
true
>;'新店铺前台示例'在浏览器中。内容
true
删除店铺前台内容项
rtal_url)
>;>>浏览器中的"new shop_front sample"。contents
true
现在我们要删除"new shop_front sample"对象。首先,我们
转到"内容"选项卡,选择"新建店铺前台示例"进行
删除。
>;>;browser.getlink('contents').click()
>;>;browser.getcontrol("新建店铺前台示例")。单击()
t;gt;浏览器.getcontrol('delete')。在浏览器中单击()
>;>;'item(s)deleted'。内容
true
因此,如果返回主页,将不再有"new shop\u front
sample"选项卡。
>;>;浏览器。打开(门户网站URL)
>>>>在浏览器中显示"New Shop_Front Sample"。内容
false
项目,但
也包括网站贡献者。
让我们注销,然后以"贡献者"身份登录,这是一个分配了
贡献者角色的门户成员。
>;>;browser.getlink("注销")。单击()
>;>;browser.open(portal_url)
>;>browser.getcontrol(name=''uu ac_name').value='contributor'
>;>browser.getcontrol(name=''uu ac_password').value=默认的_密码
>;>browser.getcontrol(name='submit').click()
>;>browser.open(portal_u url)
.getcontrol('shop_front')。click()
>>gt;browser.getcontrol(name='form.button.add')。click()
>>gt;'shop戋front'在browser.contents
true
现在我们填写并提交表单。
>;browser.getcontrol(name='title').value='shop_front sample'
>;>>browser.getcontrol('save').click()
>;>>在浏览器中保存的更改。contents
true
我们添加了一个新的店铺前台内容项目,作为参与者登录。
=''uu ac_name').value=portal_owner
>;>>浏览器.getcontrol(name=''uu ac_password').value=default_password
>;>>浏览器.getcontrol(name='submit').click()
>;>>浏览器.打开(portal_url)
投稿人
********
peter dyson,作者
********