SilkTest循序渐进6-data driven test起步

发表于:2011-03-30来源:作者:点击数: 标签:
SilkTest循序渐进6-data driven test起步 软件测试 SilkTest提供了编写DDT 测试用例 的功能,你可以使用 silktest 提供的各种函数来操作 数据库 ,这组函数被统称为DB Tester。DDT让你可以让多组不同的数据驱动同一份测试用例,这在很多复杂测试中非常有用,

  SilkTest循序渐进6-data driven test起步 软件测试

  SilkTest提供了编写DDT 测试用例的功能,你可以使用silktest提供的各种函数来操作数据库,这组函数被统称为DB Tester。DDT让你可以让多组不同的数据驱动同一份测试用例,这在很多复杂测试中非常有用,真正体现了测试数据在测试活动中的重要性。

  DDT其实并不复杂,主要由三步组成:

  1. 连接到数据源

  2. 操作数据源的数据(读取或者写入)

  3. 断开数据连接

  一般地,在DB Tester中,有两个非常重要的句柄,一个是hstmnt, 它是SQL语句句柄,它的类型是HSQL,用来存储执行完SQL语句后得到的结果。另外一个是hdbc, 是数据库句柄,由DB_Connect函数返回,它的类型是HDATABASE。下面的例子演示了如何打印一个Excel文件每一行的内容。在运行该例之前,你必须建立一个students.xls的Excel文件,并且保存其内容如下图所示。注意其中Class1表包括6行3列的内容,表有三个field,它们分别是ID, Age, Name

  代码中给出了DB Tester语句的注释

  view plaincopy to clipboardprint?

  01.[ ] use "msw32.inc"

  02.[ ] use "Registry.inc"

  03.[ ]

  04.[-] boolean printTableRows(string sFileName, string sTableName)

  05. [ ] string sSqlCmd // sql statement

  06. [ ] list of string lsCurrentRow

  07. [ ] HDATABASE hDB

  08. [ ] HSQL hstmnt

  09. [-] do

  10. [ ] // connect database source

  11. [ ] hDB = DB_Connect ("DRIVER=Microsoft Excel Driver (*.xls);HDR=Yes;FIRSTROWHASNAMES=1;IMEX=1;READONLY=FALSE;DRIVERID=790;DBQ={sFileName};")

  12. [ ] // if any error

  13. [-] if(hDB == NULL)

  14. [ ] print("Error: Can not create the connection with the data base.")

  15. [ ] return false

  16. [ ] // create SQL statement

  17. [ ] sSqlCmd = "select * from " + sTableName

原文转自:http://www.ltesting.net