您现在的位置:软界网技术中心软件工程软件测试 > 技术显示
在silktest用excel实现测试数据驱动
2008-2-19 20:32:33   网友评论       阅读次数 点此评论
   摘要:在使用自动化工具作功能测试中,除了录制脚本以外,进行测试数据的驱动是必不可少的,这样让脚本更健壮,也让脚本与脚本之间可以进行必要的交互,使我们的脚本更具有生命力,在silktest中提供了data drive的概念,在原来的脚本基础上,进行扩展,而本文介绍了笔者在使用silktest中使用excel作为数据库来在实现不同测试用例间的参数传递,这样方便了silktest在回归测试的测试数据的驱动。
关键字:DSN,ReadOnly,DBQ,DB_Connect,DB_ExecuteSQL,DB_FinishSql,DB_Disconnect
1. 建立一个测试使用的excel。放在c:\data下,名字为 silktest。
在excel中建立一个sheet名字是person,包含两个字段 name和age,并且加入一些测试数据。
c

2.介绍DB_Connect
这个是silktest连接数据库的函数,语法为hdbc = DB_Connect (con_string)。


con_string:它是数据库驱动的串,组成格式为:
"DSN=data source name[;attr=value[;attr=value]...]"
这里需要介绍我们下面要用的几个con_string的属性。
DSN:它是domain source name.我们可以在ODBC里面自己我们的配置,而当我们安装好silktest的时候,它也自动的给我们加了一个针对excel的DSN.名字可以是:Segue DDA Excel。当然我们也可以自己配置我们特定DSN针对我们特定的数据库或者数据文件。
DBQ:是我们excel的存放路径以及名字。
ReadOnly:只读属性,当我们需要对数据进行增删改的时候就需要把该属性设置为flase。
其他的几个属性如:UID,PWD等,需要用的话在查看帮助吧。
3.查找数据
cc

这边要注意的是:
DB_ExecuteSQL中SQL的语法问题。
因为我们上面已经指定好了我们的excel,现在我们要对特定的sheet进行操作。所以使用:"select name,age from [person$]"
这里要注意对于sheet的写法为[sheetname$]
DB_FetchNext中select显示的字段
这些字段要一一对应到select的语句中字段,此外它的数据类型要匹配。当然silktest有个通用的类型定义anytype。
最后是DB_FinishSQL和DB_Disconnect作为语法开始结束得标识就比较好理解了。
4.修改和删除数据
在上面例子的基础上在进行修改的话,把我们的SQL语句修改一下就可以了。

 
      来源: 作者:
 
【评论查看】