摘要:在使用自动化工具作功能测试中,除了录制脚本以外,进行测试数据的驱动是必不可少的,这样让脚本更健壮,也让脚本与脚本之间可以进行必要的交互,使我们的脚本更具有生命力,在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,并且加入一些测试数据。
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. 查找数据
这边要注意的是:
DB_ExecuteSQL中SQL的语法问题。
因为我们上面已经指定好了我们的excel,现在我们要对特定的sheet进行操作。所以使用:"select name,age from [person$]"
这里要注意对于sheet的写法为[sheetname$]
DB_FetchNext中select显示的字段
这些字段要一一对应到select的语句中字段,此外它的数据类型要匹配。当然silktest有个通用的类型定义anytype。
最后是DB_FinishSQL和DB_Disconnect作为语法开始结束得标识就比较好理解了。
4. 修改和删除数据
在上面例子的基础上在进行修改的话,把我们的SQL语句修改一下就可以了。
版权声明:51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像。51testing软件测试网欢迎与业内同行进行有益的合作和交流,如果有任何有关内容方面的合作事宜,请联系我们。