摘要:在使用自动化工具作功能测试中,除了录制脚本以外,进行测试数据的驱动是必不可少的,这样让脚本更健壮,也让脚本与脚本之间可以进行必要的交互,使我们的脚本更具有生命力,在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语句修改一下就可以了。
|