轻量级框架代码疑问...............
DataTable.GetSheet(TEST_SHEET).SetCurrentRow( 1 )
For i=1 to row_count
If DataTable("IDX",TEST_SHEET) = "√" Then
taskFileName = DataTable("bizName",TEST_SHEET)
If NOT taskFile.Exists(taskFileName) Then
taskFilePath = pathFind(Environment("testScriptFolderName"),taskFileName,"vbs")
call taskFile.add(taskFileName,taskFilePath)
ExecuteFile taskFilePath '加载task脚本文件
logPrint("加载Task脚本文件完成。"&taskFilePath)
Execute "Set obj"&taskFileName&" = new "&taskFileName '初始化task的类
End If
End If
DataTable.GetSheet(TEST_SHEET).SetNextRow
Next
'存放业务的Task的文件加载完毕
'开始按照顺序执行测试用例中的具体的各个Task
DataTable.GetSheet(TEST_SHEET).SetCurrentRow( 1 )
For i = 1 to row_count
If DataTable("IDX",TEST_SHEET) = "√" Then
'执行该脚本文件中的具体方法,方法名称为Excel表格中的taskName的值,暂时不做中英文名称的字典匹配,直接使用英文
className = DataTable("bizName",TEST_SHEET)
taskName = DataTable("taskName",TEST_SHEET)
bizDataTableName = DataTable("bizDataTable",TEST_SHEET)
filterExp =DataTable("filter",TEST_SHEET) '过滤测试数据的条件语句
If bizDataTableName<>"" Then
'如果task有对应的测试数据,那么加载对应的测试数据
Sheet_Name = testDataTable.item(DataTable("bizDataTable",TEST_SHEET))
test_data_row_count = DataTable.GetSheet(Sheet_Name).GetRowCount
For j=1 To test_data_row_count
DataTable.GetSheet(Sheet_Name).SetCurrentRow( j )
If Eval(generateFilterExp(Sheet_Name,filterExp)) Then
'Eval(generateFilterExp(Sheet_Name,filterExp)) ,解析测试数据的条件语句,符合此条件的,则执行该行测试数据,否则不执行
str = "obj"&className&"."&taskName&" "&chr(34)&Sheet_Name&chr(34)
logPrint("执行测试步骤 "&i&", "&str)
Execute str ''执行 objlogin.login "login","TEST_SHEET"
End If
DataTable.GetSheet(Sheet_Name).SetNextRow
Next
else
'如果task没有对应的测试数据,则不加载测试数据,如退出登录logout()方法
str = "Call obj"&className&"."&taskName&"()"
logPrint("执行测试步骤 "&i&", "&str)
Execute str
end if
End If
DataTable.GetSheet(TEST_SHEET).SetNextRow
Next
为什么在
-->
ExecuteFile taskFilePath '加载task脚本文件
<-- 处没有处理脚本,但到"开始按照顺序执行测试用例中的具体的各个Task"就开始执行脚本了呢..
有谁可以告诉我下为什么吗?
页:
[1]