利用selenium开发一个功能测试的框架

最近做了一个新项目 项目还在架构阶段 由于我们没有请Test Team 所以有些测试工作需要我们自己做 我被分到一个功能测试框架的工作

接下来我来说说 具体的实现思路。

 1) 框架说明

我们的项目是分模块来做的,功能测试架构分为3大块。Framework(主要放一些功用方法,对selenium的简单封装),Modules下放的都是测试的function,一个function会有N个TEST STEP。TestUI下有两个,一个是为module测试用的,是一个winform程序,另一个是console,为整个项目的功能测试,同时也方便结合schedule task来跑,便于daily build后的测试。

 

2) 文件依赖

Framework->Modules(dll引用)

                ->TestUI(dll引用)

Modules->TestUI (project引用)

 很简单拉, 呵呵。

 

3)运行

ModuleShell只是提供一个入口,其他的测试操作都是通过Modules里的方法来做的。

我们通过 selenium把脚本录制好,放到具体的方法里即可。由于是对module的测试,所以我会把该module下的所有function 列出来,

gridview里的东西便是具体的测试方法,如果不用测可以勾掉Enable。

由于是模块化的,在测试的时候,我只在ModuleShell的bin里放一个要测试的dll,那样我就能通过反射把该dll的所有方法读出来。

Test Shell的话,他的bin里会有所有的module dll,遍历所有的module dll, 把要做的test step都选出来。 然后再跑,

 

4)问题

 功能化测试只是保证我的程序在功能上是否正确。所以说我们的test case首先要写对,其次是我们的这个框架也要有一定的错误报告功能。

 因为我们无法避免程序在跑的时候不出问题,我们讨论下来,决定在每次postback之前和之后做一个check.

 之前的话,主要是保证我点按钮的时候不要有客户端错误,就是验证控件的问题了。想法是在postback之前先去触发所有验证控件的验证,用javascript写的,代码 以后再贴出来吧。

 之后的话,是防止sever端抛出来的错,我们会把server端抛出来的错放到一个专有的lable控件上,只要check是否有值就可以了。

 我想这样就差不多了吧,一些普通的错可以及时报出来。

 

 各位有什么想法说说吧,呵呵。

 

 

posted @ 2009-03-21 23:29  八位机  阅读(2087)  评论(0编辑  收藏  举报