51Testing软件测试论坛

标题: 网上流行的一自动化框架动态执行的代码段 [打印本页]

作者: liangjz    时间: 2008-7-5 23:52
标题: 网上流行的一自动化框架动态执行的代码段
框架还是蛮有意思的。
   再和我们的框架对照下(思路、目录结构、分层等),很多思想基本相通:)
   其中动态执行代码最吸引我:)  

className=”login”
taskFileName=”login”
Taskfilepath=”login.vbs”

  ExecuteFile taskFilePath '加载task脚本文件
                                logPrint("加载Task脚本文件完成。"&taskFilePath)
                                Execute "Set obj"&taskFileName&" = new "&taskFileName '初始化task的类
str = "obj"&className&"."&taskName&" "&chr(34)&Sheet_Name&chr(34)
                                                        logPrint("执行测试步骤 "&i&", "&str)
                                                        Execute str     ''执行 objlogin.login "login","TEST_SHEET"


Execute "Set obj"&tempArray(i)&" = nothing"

[ 本帖最后由 liangjz 于 2008-7-6 00:11 编辑 ]
作者: zte_boy    时间: 2008-7-6 00:06
呵呵,这个要求所有的业务脚本都是function形式组织的,个人觉得还是有他的弱点
编码的工作量比较大,对于业务脚本我还是喜欢用action来组织
但是脚本的调度还是和这个框架提供的方法一样,他提供class,我则是维护action名

作者: 假装不在    时间: 2008-7-6 02:18
代码写得很有意思,膜拜一个....
作者: peterz    时间: 2008-7-6 11:18
这个我看过了,写的不错。但是执行起来有难度。
作者: 陈能技    时间: 2008-7-6 12:07
支撑实现这些框架最核心的是用到Execute语句:
http://blog.csdn.net/Testing_is_ ... /04/19/2307970.aspx
作者: yhw8663    时间: 2008-7-7 09:55
这个框架我很久用了,对上面的代码其实有些不够好的,可以参考MVC框架的思想。 其实对目前自动化1框架有两个问题我觉得很重要:1)数据独立出来并且最好统一的管理和维护;2)业务逻辑和应用逻辑应该分离,这样能很好的使用业务逻辑变化引起的应用逻辑的修改,但要这样做的话,就需要一个让业务逻辑和应用逻辑不要直接发生调用关系,如上面提到的代码一样,把这部分代码抽象出来并封装一下,成为controller,让后让它来动态调用各种业务逻辑。
当然业务逻辑你可以用方法,也可以用类,也可以用啊action
同时这种框架可以很好的扩展到N架构上
作者: zte_boy    时间: 2008-7-7 10:22
标题: 回复 6# 的帖子
同一楼上的,我目前就是把控制函数封装起来调用的,呵呵
作者: liangjz    时间: 2008-7-7 13:07
目的都是减少耦合
作者: FLY000    时间: 2008-7-19 10:48
原帖由 liangjz 于 2008-7-5 23:52 发表
框架还是蛮有意思的。
   再和我们的框架对照下(思路、目录结构、分层等),很多思想基本相通:)
   其中动态执行代码最吸引我:)  

className=”login”
taskFileName=”login”
Taskfilepath=”login.vb ...


什么流行的框架啊,我没见过,发出来给偶们看看吧。
作者: tanky    时间: 2008-7-19 17:38
Execute确实是个好东西。可以执行动态生成的代码。

它是VBS所独有的语句,在VB中不支持。我之前曾试图找过这种语句。

可凭着对VB的了解,我后来放弃了。昨天晚上在读别人的代码的时候无意中发现了这条语句。

[ 本帖最后由 tanky 于 2008-7-19 17:59 编辑 ]
作者: tanky    时间: 2008-7-19 17:48
附表两张: 下表列出未包含在 VBScript 中的 Visual Basic for Applications 特性。
类别特性/关键字
数组处理Option Base
声明数组下界 <> 0
集合Add, Count, Item, Remove
使用 ! 字符访问集合
条件编译#Const
#If...Then...#Else
控制流程DoEvents
GoSub...Return, GoTo
On Error GoTo
On...GoSub, On...GoTo
Line numbers, Line labels
转换CVar, CVDate
Str, Val
数据类型除 Variant 外的所有固有数据类型
Type...End Type
日期/时间Date 语句、Time 语句
DDELinkExecute, LinkPoke, LinkRequest, LinkSend
调试Debug.Print
End, Stop
声明Declare (声明 DLL )
Optional
ParamArray
Static
错误处理Erl
Error
Resume, Resume Next
文件输入/输出所有传统的基本文件输入/输出 (I/O)
财务所有财务函数
对象操作TypeOf
对象Clipboard
Collection
运算符Like
选项Deftype
Option Base
Option Compare
Option Private Module
选择条件包含 Is 关键字或任何比较运算符的表达式
包含一系列使用 To 关键字的数值的表达式
字符串固定长度字符串
LSet, RSet
Mid 语句
StrConv


下表列出了未包含在 Visual Basic for Applications 中的 VBScript 特性。
分类特性/关键字
声明Class
杂项Eval
Execute
对象Regexp
Script 引擎标识ScriptEngine
ScriptEngineBuildVersion
ScriptEngineMajorVersion
ScriptEngineMinorVersion


[ 本帖最后由 tanky 于 2008-7-19 18:01 编辑 ]




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2