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