上次我们分析了什么是我们想要的自动化测试框架,这一次我们基于上一次的分析,来设计我们的自动化测试框架架构。
首先,我们需要一个类,去做帮助我们处理和IE相关的事情,帮助我们操纵IE,打开和关闭IE。然后,我们需要一组的类,来描述网页上的元素,比如TextBox和Button,去模拟他们的事件,去取得他们的状态。总体来说就是封装这些元素。
除此之外,我们还需要一些辅助的类来帮助我们做一些工作。
上次我们分析了什么是我们想要的自动化测试框架,这一次我们基于上一次的分析,来设计我们的自动化测试框架架构。
首先,我们需要一个类,去做帮助我们处理和IE相关的事情,帮助我们操纵IE,打开和关闭IE。然后,我们需要一组的类,来描述网页上的元素,比如TextBox和Button,去模拟他们的事件,去取得他们的状态。总体来说就是封装这些元素。
除此之外,我们还需要一些辅助的类来帮助我们做一些工作。
1. http://www.osskins.com/main/category/drupal/
2. http://mydrupal.com/downloads
3. http://www.siteground.com/drupal-hosting/drupal-themes.htm
4. http://www.cmslounge.com/template-store/drupal-templates
5. http://negen.altervista.org/?q=themes
6. http://www.freecsstemplates.org
7. http://www.xweb.com.au
8. http://www.godrupal.com/
9. http://www.joomlactive.com/blogcategory/Story/Drupal_Themes/
10. http://www.nabble.com/Drupal-f14421.html
11. http://www.lhmdesign.com/drupal-themes-and-drupal-theming-services
从今天开始,我们正式进入自动化测试框架的编写中。
首先我们先进行需求分析:我们到底要什么样的自动化测试框架?
原文名字是: HowTo: Drupal as database: A one to many scenario for displaying the data
现在不知道为什么改成了Displaying related nodes using Views and Contemplate
挺不错的文章,放在下面的链接:
http://drupal.org/node/134320
记录一下,万一又改名了找不到就郁闷了。
总是要在Drupal上试着架一些有趣的功能,或者直接做一些东西,需要很多的测试环境,而又希望自己的成果可以在任何地方都访问到,所以就想使用自己的Hostmonster空间来搭测试环境。
不过不想每一次都拷贝一份过去,建一个数据库,再建一个用户,太麻烦了。所以我就决定使用Drupal的MultiSite的功能来搭建一个单数据库,多环境,但是数据分离的测试环境。
http://drupal.org/project/views_calc
翻译:
这个模块为Views表格添加了简单的计算功能。
你可以对选择好的字段或者列求和(SUM),求平均(AVERAGE),或者求个数(COUNT)。计算结果会被加在Table的左边或者下边,而且会有一个添加的Theme来让View看起来更像Spreadsheet。
(翻译的好差。。。大家将就看吧。)
http://drupal.org/project/multiblock
翻译:
Drupal的Block模块有一个限制,就是每一个Block都只能有一个实例,每个Block和自己的显示区域,权重,可见与否(等其他的设置)是一一对应的。这就限制了一个Block不能被设置在不同的页面被设置在不同的区域。MultiBlock模块解决了这个问题,它允许你从已经存在的Block生成一个Block实例,请阅读Module里的Readme文件。
模块安装好之后就可以在Build菜单找到Block Instance,然后就可以从现有的Block生成另一个。
DotNetNuke的研究告一段落了。由于的确是时间有限,所以没有太深入的研究,只看了一本电子书,还架了起来了一个看了看。
总体的感觉是再Petshop架构上加了很强大的模块和主题功能。支持多数据库,Drupal比起来要轻量很多。DotNetNuke写模块也要写三个层,但是Drupal却完全不需要。
接下来就是如果有DotNetNuke的项目再开始学,DotNetNuke的学习就告一段落了。
接下来由于兴趣和其他的原因,还是决定研究Drupal了。
上面的几次课程中,我们介绍了如何打开浏览器,如何获取每个web控件的信息,并且控制并验证他们。
从上面的文章中,我相信大家已经可以写出简单的测试程序了。但是还有一个很重要的问题没有解决:如何判断浏览器是否加载完成?