- 浏览: 27231 次
- 性别:
- 来自: 上海
最新评论
' *********************************************************************************************
'''''''''参数: ReportExcelFile 报告输出的路径,每次QTP运行后的测试结果路径
''''''调用方法:
'' ReportExcelFileSavePath
' *********************************************************************************************
Public ReportExcelFileSavePath
ReportExcelFileSavePath = Environment ("TestDir")& "\" & "测试结果-" & Date & "-"& Hour(Now) & Minute(Now)& Second(Now) & ".xlsx"
' *********************************************************************************************
' ******************************************************************************检查点结果输出***************************************************************************************************
'''以下这个段落是对检查点进行判断,正确输出Pass,错误输出红色的Fail,
'''调用方法:
''CheckPointResultOutputToExcel 检查点名称,CheckPointResult
''注意:1. 在前面的CheckPoint前面插入:CheckPointResult=
''2.检查点的最后Check CheckPoint("打开首页") 中改为:Check (CheckPoint("打开首页"))
' *************************************************************************' *************************************************************************
Function CheckPointResultOutputToExcel (CheckPointName,CheckPointResult)
'On Error Resume Next
Set ExcelSheet1 = ExcelApp.Worksheets.Item("测试结果")
Row= ExcelSheet1.Cells(10,5) ''使用Excel文档数据来记录行数
Column=2
RunTestCaseAmount=ExcelSheet1.Cells(7,3)
RunTestCaseAmount=RunTestCaseAmount+1
ExcelSheet1.Cells(7,3) = RunTestCaseAmount
If CheckPointResult = "True" Then
ExcelSheet1.Cells(Row, Column) = RunTestCaseAmount
''''设置用例编号居中
ExcelSheet1.Range("B"&Row&":B"&Row).HorizontalAlignment = 3 ''4’右边对齐 3 '居中 2 '左边对齐
column=column+1
ExcelSheet1.Cells( Row, Column) = CheckPointName
column=column+1
ExcelSheet1.Cells( Row, Column) = "Pass"
''''设置测试结果居中
ExcelSheet1.Range("D"&Row&":D"&Row).HorizontalAlignment = 3 ''4’右边对齐 3 '居中 2 '左边对齐
''设置Pass单元格颜色为绿色
ExcelSheet1.Cells(Row, Column).Font.Color = vbGreen
PassAmountOfTestCase = ExcelSheet1.Cells( 8, 3)
ExcelSheet1.Cells( 8, 3) = PassAmountOfTestCase+1
Elseif CheckPointResult = "False" then
ExcelSheet1.Cells(Row, Column) = RunTestCaseAmount
''''设置用例编号居中
ExcelSheet1.Range("B"&Row&":B"&Row).HorizontalAlignment = 3 ''4’右边对齐 3 '居中 2 '左边对齐
column=column+1
ExcelSheet1.Cells( Row, Column) = CheckPointName
column=column+1
ExcelSheet1.Cells( Row, Column) = "Fail"
''''设置测试结果居中
ExcelSheet1.Range("D"&Row&":D"&Row).HorizontalAlignment = 3 ''4’右边对齐 3 '居中 2 '左边对齐
''设置Fail单元格颜色为红色
ExcelSheet1.Cells(Row, Column).Font.Color = vbRed
FailAmountOfTestCase = ExcelSheet1.Cells( 9, 3)
ExcelSheet1.Cells( 9, 3) = FailAmountOfTestCase+1
Else
ExcelSheet1.Cells(Row, Column) = RunTestCaseAmount
''''设置用例编号居中
ExcelSheet1.Range("B"&Row&":B"&Row).HorizontalAlignment = 3 ''4’右边对齐 3 '居中 2 '左边对齐
column=column+1
ExcelSheet1.Cells( Row, Column) = CheckPointName
column=column+1
ExcelSheet1.Cells( Row, Column) = CheckPointResult
''''设置测试结果居中
ExcelSheet1.Range("D"&Row&":D"&Row).HorizontalAlignment = 3 ''4’右边对齐 3 '居中 2 '左边对齐
'' ''设置忽略单元格颜色为绿色
'' ExcelSheet1.Cells(Row, Column).Font.Color = vbGreen
NoActionAmountOfTestCase = ExcelSheet1.Cells( 10, 3)
ExcelSheet1.Cells( 10, 3) = NoActionAmountOfTestCase+1
End If
'设置测试结果的边界
ExcelSheet1.Range("B"&Row&":F"&Row).Borders(1).LineStyle = 1
ExcelSheet1.Range("B"&Row&":F"&Row).Borders(2).LineStyle = 1
ExcelSheet1.Range("B"&Row&":F"&Row).Borders(3).LineStyle = 1
ExcelSheet1.Range("B"&Row&":F"&Row).Borders(4).LineStyle = 1
ExcelApp.ActiveWorkbook.Save
CheckPointResult="False" ''防止没有进行CheckPointResult值的获取
'''让行数增加1,以备下一条测试用例获取当前行使用
Row=Row+1
ExcelSheet1.Cells(10,5) = Row
'''填入结束时间用来计算脚本执行时间,插入后会自动进行计算执行时间
ExcelSheet1.Cells(4,3) = Time
End Function
'''''****************************************************************************************************************************************************************
'''''****************************************建立一个测试结果Excel并打印出格式**********************************************************************
'''本函数用于为测试结果建立一个Excel并将该Excel设置相关格式
'''调用方法:(在创建QTP脚本时可以不需要直接调用本函数,可以调用 StartQTP()函数)
''CreatAExcelAndPrintTheForm()
' *************************************************************************' ***************************************************************************************
Function CreatAExcelAndPrintTheForm()
On Error Resume Next
''''创建一个Excel文件
Set ExcelApp = CreateObject("Excel.Application")
ExcelApp.Visible = True
ExcelApp.Workbooks.Add
''''保存测试结果文件
ExcelApp.ActiveWorkbook.SaveAs ReportExcelFileSavePath
''''选定一个Excel表
Set ExcelSheet1 = ExcelApp.Sheets.Item(1)
ExcelApp.Sheets.Item(1).Select
''''更改当前sheet的名字
ExcelSheet1.Name = "测试结果"
''''设置列宽
ExcelSheet1.Columns("A:A").ColumnWidth = 4
ExcelSheet1.Columns("B:B").ColumnWidth = 11
ExcelSheet1.Columns("C:C").ColumnWidth = 30
ExcelSheet1.Columns("D:D").ColumnWidth = 14
ExcelSheet1.Columns("E:E").ColumnWidth = 30
ExcelSheet1.Columns("F:F").ColumnWidth = 40
'''设置单元格为自动换行
ExcelApp.Range("A:G").WrapText = TRUE
'设置显示区域的字体类型和大小
ExcelSheet1.Range("A:F").Font.Name = "Arial"
ExcelSheet1.Range("A:F").Font.Size = 10
'为测试标题设置格式
ExcelSheet1.Range("B1:E1").Interior.ColorIndex = 53 ''单元格底色
ExcelSheet1.Range("B1:E1").Font.ColorIndex = 19
ExcelSheet1.Range("B1:E1").Font.Bold = True
ExcelSheet1.Range("B1:E1").Merge ''''合并单元格
'设置测试参数cell的边界
ExcelSheet1.Range("B2:B10").HorizontalAlignment = 4 ''4’右边对齐 3 '居中 2 '左边对齐
ExcelSheet1.Range("C2:C10").HorizontalAlignment = 2 ''4’右边对齐 3 '居中 2 '左边对齐
ExcelSheet1.Range("D2:D10").HorizontalAlignment = 4 ''4’右边对齐 3 '居中 2 '左边对齐
ExcelSheet1.Range("E2:E10").HorizontalAlignment = 2 ''4’右边对齐 3 '居中 2 '左边对齐
ExcelSheet1.Range("B2:E10").Borders(1).LineStyle = 1
ExcelSheet1.Range("B2:E10").Borders(2).LineStyle = 1
ExcelSheet1.Range("B2:E10").Borders(3).LineStyle = 1
ExcelSheet1.Range("B2:E10").Borders(4).LineStyle = 1
'设置测试参数Cell的样式
ExcelSheet1.Range("B2:E10").Interior.ColorIndex = 40 ''单元格底色
ExcelSheet1.Range("B2:E10").Font.ColorIndex = 7 '‘字体颜色
ExcelSheet1.Range("B2:B10").Font.ColorIndex = 12 '‘字体颜色
ExcelSheet1.Range("D2:D10").Font.ColorIndex = 12 '‘字体颜色
ExcelSheet1.Range("B2:E10").Font.Bold = True ''加粗
'为Result Summery设置格式
ExcelSheet1.Range("B11:F11").Interior.ColorIndex = 53
ExcelSheet1.Range("B11:F11").Font.ColorIndex = 19
ExcelSheet1.Range("B11:F11").Font.Bold = True
ExcelSheet1.Range("B11:G11").HorizontalAlignment = 3 ''4’右边对齐 3 '居中 2 '左边对齐
'设置Result Summery的边界
ExcelSheet1.Range("B11:F11").Borders(1).LineStyle = 1
ExcelSheet1.Range("B11:F11").Borders(2).LineStyle = 1
ExcelSheet1.Range("B11:F11").Borders(3).LineStyle = 1
ExcelSheet1.Range("B11:F11").Borders(4).LineStyle = 1
'''对单元格进行冻结
ExcelSheet1.Range("B12").Select
ExcelApp.ActiveWindow.FreezePanes = True
''''给单元格赋值
ExcelSheet1.Range("B1").Value = "可得网自动化测试结果"
ExcelSheet1.Cells(2,2) = "测试日期:"
ExcelSheet1.Cells(2,3) = Date
ExcelSheet1.Cells(3,2) = "开始时间:"
ExcelSheet1.Cells(3,3) = Time
ExcelSheet1.Cells(4,2) = "结束时间:"
ExcelSheet1.Cells(5,2) = "执行时长:"
ExcelSheet1.Range("C5").NumberFormat = "[h]:mm:ss;@"
ExcelSheet1.Cells(6,2) = "测试机器:"
ExcelSheet1.Range("C6").Value =GetIP()
ExcelSheet1.Cells(7,2) = "运行用例数:"
ExcelSheet1.Cells(7,3) = 0
ExcelSheet1.Cells(8,2) = "通过用例数:"
ExcelSheet1.Cells(8,3) = 0
ExcelSheet1.Cells(9,2) = "失败用例数:"
ExcelSheet1.Cells(9,3) = 0
ExcelSheet1.Cells(10,2) = "忽略用例数:"
ExcelSheet1.Cells(10,3) = 0
ExcelSheet1.Cells(2,4) = "测试环境:"
ExcelSheet1.Cells(3,4) = "SQL 地址:"
ExcelSheet1.Cells(4,4) = "SQL用户名:"
ExcelSheet1.Cells(5,4) = "SQL 密码:"
ExcelSheet1.Cells(6,4) = "数据库名:"
ExcelSheet1.Cells(10,4) = "当前行:"
ExcelSheet1.Cells(10,5) = 12
ExcelSheet1.Cells(2,5) = "Http://192.168.1.81:8085"
ExcelSheet1.Cells(3,5) = "192.168.1.81"
ExcelSheet1.Cells(4,5) = "test"
ExcelSheet1.Cells(5,5) = "t#@!$%"
ExcelSheet1.Cells(6,5) = "test.keede"
ExcelSheet1.Cells(11,2) = "用例编号"
ExcelSheet1.Cells(11,3) ="测试用例标题"
ExcelSheet1.Cells(11,4) ="测试结果"
ExcelSheet1.Cells(11,5) ="测试数据"
ExcelSheet1.Cells(11,6) ="备注"
'''填入结束时间
ExcelSheet1.Cells(4,3) = Time
'''计算脚本运行时间
ExcelSheet1.Range("C5").Value = "=R[-1]C-R[-2]C"
msgbox("请确认测试结果文档中的“测试环境”,“SQL地址”,“SQL用户名”,“SQL密码”,“数据库名” 5个参数是否正确,确认无误后点击确定按钮开始运行测试脚本!如果错误,请直接在EXCEL中更改!")
End Function
'''''*******************************************************************************************************************************************************************************
''''******************************************************************设置测试结果测试数据函数*****************************************************
'''本函数用于对测试用例进行添加测试用例所用的测试数据,一个测试用例可以添加多个测试数据,即可以多次使用本函数
'''调用方法:
''SetTestResultComments 备注标题,备注内容
' *************************************************************************' *************************************************************************
Function SetTestData(DataTitle,DataValue)
On Error Resume Next
Set ExcelSheet1 = ExcelApp.Worksheets.Item("测试结果")
Row= ExcelSheet1.Cells(10,5)
TestData = ExcelSheet1.Cells(Row,5)
''''防止一个测试用例中多次使用测试数据函数,先取出测试数据中的值,将需要添加的新的值添加在后面
If TestData = "" then
TestData =DataTitle&": "&DataValue
else
''没找到如何对Excel单元格进行换行,现在使用空格来生成换行
TheValueOfBlankSpace = " "
TestData = TestData&TheValueOfBlankSpace&DataTitle&":"&DataValue
End If
ExcelSheet1.Cells(Row,5) = TestData
End Function
'''''*****************************************************************************
'''''******************************************************************设置测试结果备注函数*****************************************************
'''本函数用于对测试用例进行添加备注使用,一个测试用例可以添加多个备注,即可以多次使用本函数
'''调用方法:
''SetTestResultComments 备注标题,备注内容
' *************************************************************************' *************************************************************************
Function SetTestResultComments(CommentsTitle,CommentsValue)
On Error Resume Next
Set ExcelSheet1 = ExcelApp.Worksheets.Item("测试结果")
Row= ExcelSheet1.Cells(10,5)
Comments = ExcelSheet1.Cells(Row,6)
''''防止一个测试用例中多次使用备注函数,先取出备注的值,将需要添加的新的值添加在后面
If Comments = "" then
Comments=CommentsTitle&": "&CommentsValue
else
''没找到如何对Excel单元格进行换行,现在使用空格来生成换行
TheValueOfBlankSpace = " "
Comments=Comments&TheValueOfBlankSpace&CommentsTitle&":"&CommentsValue
End If
ExcelSheet1.Cells(Row,6) = Comments
End Function
'''''*****************************************************************************
'''''**********************************开始函数*******************************************
Function StartQTP()
CreatAExcelAndPrintTheForm()
End Function
'''''****************************************************************************
'''''***********************************结束函数******************************************
Function EndQTP()
On Error Resume Next
Set ExcelSheet1 = ExcelApp.Worksheets.Item("测试结果")
'''将当前行和行数置空,该值只用于脚本运行过程
' ExcelSheet1.Range("D10").Value = ""
' ExcelSheet1.Range("E10").Value = ""
'''填入结束时间用来计算脚本执行时间,插入后会自动进行计算执行时间
ExcelSheet1.Cells(4,3) = Time
'保存已经存在的Excel文档
ExcelApp.ActiveWorkbook.Save
''''释放参数
' ExcelApp.Quit
Set ExcelSheet1 = Nothing
Set ExcelApp = Nothing
End Function
'''''*****************************************************************************
'''''******************************************************************打开已经存在的Excel*****************************************************************
Function OpenExcel(ExcelPath)
Set ExcelApp = CreateObject("Excel.Application")
ExcelApp.Visible = True
Set objworkbook = ExcelApp.Workbooks.Open (ExcelPath)
' Set ExcelSheet1 = ExcelApp.Worksheets.Item("测试结果")
End Function
'''''*****************************************************************************'''''*****************************************************************************
'''''''''参数: ReportExcelFile 报告输出的路径,每次QTP运行后的测试结果路径
''''''调用方法:
'' ReportExcelFileSavePath
' *********************************************************************************************
Public ReportExcelFileSavePath
ReportExcelFileSavePath = Environment ("TestDir")& "\" & "测试结果-" & Date & "-"& Hour(Now) & Minute(Now)& Second(Now) & ".xlsx"
' *********************************************************************************************
' ******************************************************************************检查点结果输出***************************************************************************************************
'''以下这个段落是对检查点进行判断,正确输出Pass,错误输出红色的Fail,
'''调用方法:
''CheckPointResultOutputToExcel 检查点名称,CheckPointResult
''注意:1. 在前面的CheckPoint前面插入:CheckPointResult=
''2.检查点的最后Check CheckPoint("打开首页") 中改为:Check (CheckPoint("打开首页"))
' *************************************************************************' *************************************************************************
Function CheckPointResultOutputToExcel (CheckPointName,CheckPointResult)
'On Error Resume Next
Set ExcelSheet1 = ExcelApp.Worksheets.Item("测试结果")
Row= ExcelSheet1.Cells(10,5) ''使用Excel文档数据来记录行数
Column=2
RunTestCaseAmount=ExcelSheet1.Cells(7,3)
RunTestCaseAmount=RunTestCaseAmount+1
ExcelSheet1.Cells(7,3) = RunTestCaseAmount
If CheckPointResult = "True" Then
ExcelSheet1.Cells(Row, Column) = RunTestCaseAmount
''''设置用例编号居中
ExcelSheet1.Range("B"&Row&":B"&Row).HorizontalAlignment = 3 ''4’右边对齐 3 '居中 2 '左边对齐
column=column+1
ExcelSheet1.Cells( Row, Column) = CheckPointName
column=column+1
ExcelSheet1.Cells( Row, Column) = "Pass"
''''设置测试结果居中
ExcelSheet1.Range("D"&Row&":D"&Row).HorizontalAlignment = 3 ''4’右边对齐 3 '居中 2 '左边对齐
''设置Pass单元格颜色为绿色
ExcelSheet1.Cells(Row, Column).Font.Color = vbGreen
PassAmountOfTestCase = ExcelSheet1.Cells( 8, 3)
ExcelSheet1.Cells( 8, 3) = PassAmountOfTestCase+1
Elseif CheckPointResult = "False" then
ExcelSheet1.Cells(Row, Column) = RunTestCaseAmount
''''设置用例编号居中
ExcelSheet1.Range("B"&Row&":B"&Row).HorizontalAlignment = 3 ''4’右边对齐 3 '居中 2 '左边对齐
column=column+1
ExcelSheet1.Cells( Row, Column) = CheckPointName
column=column+1
ExcelSheet1.Cells( Row, Column) = "Fail"
''''设置测试结果居中
ExcelSheet1.Range("D"&Row&":D"&Row).HorizontalAlignment = 3 ''4’右边对齐 3 '居中 2 '左边对齐
''设置Fail单元格颜色为红色
ExcelSheet1.Cells(Row, Column).Font.Color = vbRed
FailAmountOfTestCase = ExcelSheet1.Cells( 9, 3)
ExcelSheet1.Cells( 9, 3) = FailAmountOfTestCase+1
Else
ExcelSheet1.Cells(Row, Column) = RunTestCaseAmount
''''设置用例编号居中
ExcelSheet1.Range("B"&Row&":B"&Row).HorizontalAlignment = 3 ''4’右边对齐 3 '居中 2 '左边对齐
column=column+1
ExcelSheet1.Cells( Row, Column) = CheckPointName
column=column+1
ExcelSheet1.Cells( Row, Column) = CheckPointResult
''''设置测试结果居中
ExcelSheet1.Range("D"&Row&":D"&Row).HorizontalAlignment = 3 ''4’右边对齐 3 '居中 2 '左边对齐
'' ''设置忽略单元格颜色为绿色
'' ExcelSheet1.Cells(Row, Column).Font.Color = vbGreen
NoActionAmountOfTestCase = ExcelSheet1.Cells( 10, 3)
ExcelSheet1.Cells( 10, 3) = NoActionAmountOfTestCase+1
End If
'设置测试结果的边界
ExcelSheet1.Range("B"&Row&":F"&Row).Borders(1).LineStyle = 1
ExcelSheet1.Range("B"&Row&":F"&Row).Borders(2).LineStyle = 1
ExcelSheet1.Range("B"&Row&":F"&Row).Borders(3).LineStyle = 1
ExcelSheet1.Range("B"&Row&":F"&Row).Borders(4).LineStyle = 1
ExcelApp.ActiveWorkbook.Save
CheckPointResult="False" ''防止没有进行CheckPointResult值的获取
'''让行数增加1,以备下一条测试用例获取当前行使用
Row=Row+1
ExcelSheet1.Cells(10,5) = Row
'''填入结束时间用来计算脚本执行时间,插入后会自动进行计算执行时间
ExcelSheet1.Cells(4,3) = Time
End Function
'''''****************************************************************************************************************************************************************
'''''****************************************建立一个测试结果Excel并打印出格式**********************************************************************
'''本函数用于为测试结果建立一个Excel并将该Excel设置相关格式
'''调用方法:(在创建QTP脚本时可以不需要直接调用本函数,可以调用 StartQTP()函数)
''CreatAExcelAndPrintTheForm()
' *************************************************************************' ***************************************************************************************
Function CreatAExcelAndPrintTheForm()
On Error Resume Next
''''创建一个Excel文件
Set ExcelApp = CreateObject("Excel.Application")
ExcelApp.Visible = True
ExcelApp.Workbooks.Add
''''保存测试结果文件
ExcelApp.ActiveWorkbook.SaveAs ReportExcelFileSavePath
''''选定一个Excel表
Set ExcelSheet1 = ExcelApp.Sheets.Item(1)
ExcelApp.Sheets.Item(1).Select
''''更改当前sheet的名字
ExcelSheet1.Name = "测试结果"
''''设置列宽
ExcelSheet1.Columns("A:A").ColumnWidth = 4
ExcelSheet1.Columns("B:B").ColumnWidth = 11
ExcelSheet1.Columns("C:C").ColumnWidth = 30
ExcelSheet1.Columns("D:D").ColumnWidth = 14
ExcelSheet1.Columns("E:E").ColumnWidth = 30
ExcelSheet1.Columns("F:F").ColumnWidth = 40
'''设置单元格为自动换行
ExcelApp.Range("A:G").WrapText = TRUE
'设置显示区域的字体类型和大小
ExcelSheet1.Range("A:F").Font.Name = "Arial"
ExcelSheet1.Range("A:F").Font.Size = 10
'为测试标题设置格式
ExcelSheet1.Range("B1:E1").Interior.ColorIndex = 53 ''单元格底色
ExcelSheet1.Range("B1:E1").Font.ColorIndex = 19
ExcelSheet1.Range("B1:E1").Font.Bold = True
ExcelSheet1.Range("B1:E1").Merge ''''合并单元格
'设置测试参数cell的边界
ExcelSheet1.Range("B2:B10").HorizontalAlignment = 4 ''4’右边对齐 3 '居中 2 '左边对齐
ExcelSheet1.Range("C2:C10").HorizontalAlignment = 2 ''4’右边对齐 3 '居中 2 '左边对齐
ExcelSheet1.Range("D2:D10").HorizontalAlignment = 4 ''4’右边对齐 3 '居中 2 '左边对齐
ExcelSheet1.Range("E2:E10").HorizontalAlignment = 2 ''4’右边对齐 3 '居中 2 '左边对齐
ExcelSheet1.Range("B2:E10").Borders(1).LineStyle = 1
ExcelSheet1.Range("B2:E10").Borders(2).LineStyle = 1
ExcelSheet1.Range("B2:E10").Borders(3).LineStyle = 1
ExcelSheet1.Range("B2:E10").Borders(4).LineStyle = 1
'设置测试参数Cell的样式
ExcelSheet1.Range("B2:E10").Interior.ColorIndex = 40 ''单元格底色
ExcelSheet1.Range("B2:E10").Font.ColorIndex = 7 '‘字体颜色
ExcelSheet1.Range("B2:B10").Font.ColorIndex = 12 '‘字体颜色
ExcelSheet1.Range("D2:D10").Font.ColorIndex = 12 '‘字体颜色
ExcelSheet1.Range("B2:E10").Font.Bold = True ''加粗
'为Result Summery设置格式
ExcelSheet1.Range("B11:F11").Interior.ColorIndex = 53
ExcelSheet1.Range("B11:F11").Font.ColorIndex = 19
ExcelSheet1.Range("B11:F11").Font.Bold = True
ExcelSheet1.Range("B11:G11").HorizontalAlignment = 3 ''4’右边对齐 3 '居中 2 '左边对齐
'设置Result Summery的边界
ExcelSheet1.Range("B11:F11").Borders(1).LineStyle = 1
ExcelSheet1.Range("B11:F11").Borders(2).LineStyle = 1
ExcelSheet1.Range("B11:F11").Borders(3).LineStyle = 1
ExcelSheet1.Range("B11:F11").Borders(4).LineStyle = 1
'''对单元格进行冻结
ExcelSheet1.Range("B12").Select
ExcelApp.ActiveWindow.FreezePanes = True
''''给单元格赋值
ExcelSheet1.Range("B1").Value = "可得网自动化测试结果"
ExcelSheet1.Cells(2,2) = "测试日期:"
ExcelSheet1.Cells(2,3) = Date
ExcelSheet1.Cells(3,2) = "开始时间:"
ExcelSheet1.Cells(3,3) = Time
ExcelSheet1.Cells(4,2) = "结束时间:"
ExcelSheet1.Cells(5,2) = "执行时长:"
ExcelSheet1.Range("C5").NumberFormat = "[h]:mm:ss;@"
ExcelSheet1.Cells(6,2) = "测试机器:"
ExcelSheet1.Range("C6").Value =GetIP()
ExcelSheet1.Cells(7,2) = "运行用例数:"
ExcelSheet1.Cells(7,3) = 0
ExcelSheet1.Cells(8,2) = "通过用例数:"
ExcelSheet1.Cells(8,3) = 0
ExcelSheet1.Cells(9,2) = "失败用例数:"
ExcelSheet1.Cells(9,3) = 0
ExcelSheet1.Cells(10,2) = "忽略用例数:"
ExcelSheet1.Cells(10,3) = 0
ExcelSheet1.Cells(2,4) = "测试环境:"
ExcelSheet1.Cells(3,4) = "SQL 地址:"
ExcelSheet1.Cells(4,4) = "SQL用户名:"
ExcelSheet1.Cells(5,4) = "SQL 密码:"
ExcelSheet1.Cells(6,4) = "数据库名:"
ExcelSheet1.Cells(10,4) = "当前行:"
ExcelSheet1.Cells(10,5) = 12
ExcelSheet1.Cells(2,5) = "Http://192.168.1.81:8085"
ExcelSheet1.Cells(3,5) = "192.168.1.81"
ExcelSheet1.Cells(4,5) = "test"
ExcelSheet1.Cells(5,5) = "t#@!$%"
ExcelSheet1.Cells(6,5) = "test.keede"
ExcelSheet1.Cells(11,2) = "用例编号"
ExcelSheet1.Cells(11,3) ="测试用例标题"
ExcelSheet1.Cells(11,4) ="测试结果"
ExcelSheet1.Cells(11,5) ="测试数据"
ExcelSheet1.Cells(11,6) ="备注"
'''填入结束时间
ExcelSheet1.Cells(4,3) = Time
'''计算脚本运行时间
ExcelSheet1.Range("C5").Value = "=R[-1]C-R[-2]C"
msgbox("请确认测试结果文档中的“测试环境”,“SQL地址”,“SQL用户名”,“SQL密码”,“数据库名” 5个参数是否正确,确认无误后点击确定按钮开始运行测试脚本!如果错误,请直接在EXCEL中更改!")
End Function
'''''*******************************************************************************************************************************************************************************
''''******************************************************************设置测试结果测试数据函数*****************************************************
'''本函数用于对测试用例进行添加测试用例所用的测试数据,一个测试用例可以添加多个测试数据,即可以多次使用本函数
'''调用方法:
''SetTestResultComments 备注标题,备注内容
' *************************************************************************' *************************************************************************
Function SetTestData(DataTitle,DataValue)
On Error Resume Next
Set ExcelSheet1 = ExcelApp.Worksheets.Item("测试结果")
Row= ExcelSheet1.Cells(10,5)
TestData = ExcelSheet1.Cells(Row,5)
''''防止一个测试用例中多次使用测试数据函数,先取出测试数据中的值,将需要添加的新的值添加在后面
If TestData = "" then
TestData =DataTitle&": "&DataValue
else
''没找到如何对Excel单元格进行换行,现在使用空格来生成换行
TheValueOfBlankSpace = " "
TestData = TestData&TheValueOfBlankSpace&DataTitle&":"&DataValue
End If
ExcelSheet1.Cells(Row,5) = TestData
End Function
'''''*****************************************************************************
'''''******************************************************************设置测试结果备注函数*****************************************************
'''本函数用于对测试用例进行添加备注使用,一个测试用例可以添加多个备注,即可以多次使用本函数
'''调用方法:
''SetTestResultComments 备注标题,备注内容
' *************************************************************************' *************************************************************************
Function SetTestResultComments(CommentsTitle,CommentsValue)
On Error Resume Next
Set ExcelSheet1 = ExcelApp.Worksheets.Item("测试结果")
Row= ExcelSheet1.Cells(10,5)
Comments = ExcelSheet1.Cells(Row,6)
''''防止一个测试用例中多次使用备注函数,先取出备注的值,将需要添加的新的值添加在后面
If Comments = "" then
Comments=CommentsTitle&": "&CommentsValue
else
''没找到如何对Excel单元格进行换行,现在使用空格来生成换行
TheValueOfBlankSpace = " "
Comments=Comments&TheValueOfBlankSpace&CommentsTitle&":"&CommentsValue
End If
ExcelSheet1.Cells(Row,6) = Comments
End Function
'''''*****************************************************************************
'''''**********************************开始函数*******************************************
Function StartQTP()
CreatAExcelAndPrintTheForm()
End Function
'''''****************************************************************************
'''''***********************************结束函数******************************************
Function EndQTP()
On Error Resume Next
Set ExcelSheet1 = ExcelApp.Worksheets.Item("测试结果")
'''将当前行和行数置空,该值只用于脚本运行过程
' ExcelSheet1.Range("D10").Value = ""
' ExcelSheet1.Range("E10").Value = ""
'''填入结束时间用来计算脚本执行时间,插入后会自动进行计算执行时间
ExcelSheet1.Cells(4,3) = Time
'保存已经存在的Excel文档
ExcelApp.ActiveWorkbook.Save
''''释放参数
' ExcelApp.Quit
Set ExcelSheet1 = Nothing
Set ExcelApp = Nothing
End Function
'''''*****************************************************************************
'''''******************************************************************打开已经存在的Excel*****************************************************************
Function OpenExcel(ExcelPath)
Set ExcelApp = CreateObject("Excel.Application")
ExcelApp.Visible = True
Set objworkbook = ExcelApp.Workbooks.Open (ExcelPath)
' Set ExcelSheet1 = ExcelApp.Worksheets.Item("测试结果")
End Function
'''''*****************************************************************************'''''*****************************************************************************
发表评论
-
vbs class的调用及字典的应用代码
2014-03-17 12:07 660<!--StartFragment -->Cla ... -
QTP中利用DOM实现拖动浏览器滚动条
2014-01-10 16:48 560QTP中利用DOM实现拖动浏览器滚动条 有的时候需要在 ... -
QTP11使用DOM XPath以及CSS识别元素对象
2013-12-23 15:54 854我们知道,像DOM,Html,CSS,XPath等对对象的 ... -
QTP之有关富文本框赋值
2013-10-21 17:35 1188前段时间在做QTP脚本时,遇到一个问题,主要问题是给富文本框 ... -
QTP简单框架之EXCEL报表
2013-10-15 15:06 1001Dim oReporterManager Set oRepo ... -
QTP如何检查WEB对象是否隐藏
2013-10-10 10:38 596在WEB页面中隐藏对象的3种方式1、使用display例如: ... -
QTP登录案例
2013-09-22 18:20 869SystemUtil.Run "http://1 ... -
判断datatable中的数据是否有重复数据
2013-09-13 12:06 1638rowcount= DataTable.GetSheet(&q ... -
QTP测试报告代码
2013-09-09 12:59 829自动化测试实际是将测 ... -
京东网:疯狂抢购、猜您喜欢等模块下的图片超链接自动化测试
2013-09-02 17:30 551SystemUtil.Run "http://ww ... -
测试自动化实现难点—Web对象的识别
2013-08-30 13:25 716静态Web对象的识别 序号 ... -
京东网京东快报超级链接验证
2013-08-30 12:37 1031SystemUtil.Run "http://www ... -
获取背景颜色
2013-08-27 15:02 790Browser("ITeye Java编程 Spr ... -
Dictionary 字典对象
2013-08-23 11:32 873... -
Scripting.Dictionary对象
2013-08-23 11:08 1478[vb] view plaincopy ... -
测试自动化设计 - GUI层面向对象的扩展设计
2013-08-23 10:48 646测试自动化设计 - GUI层面向对象的扩展设计 ... -
对WebElement对象使用编程性描述
2013-08-08 18:18 2315对WebElement对象使用编程性描述(Using Pro ... -
vbs中get和set方法
2013-08-07 13:23 981Class User Private s_name ... -
TO&RO
2013-08-02 15:17 7931.GetTOProperty() ● 基本含义:获取 ... -
QTP关闭多余的browser窗口
2013-08-02 14:23 535要判断打开了几个浏览器窗口,我们使用description对 ...
相关推荐
**QTP Excel函数详解** QuickTest Professional(QTP)是一款由HP公司开发的功能自动化测试工具,它支持多种应用程序,包括Excel。在QTP测试脚本中,能够与Excel文件进行交互,实现数据驱动测试,这需要用到QTP的...
`RelevantCodes.ExcelUtil.cls.vbs`和`RelevantCodes.ExcelUtil_Examples.vbs`可能包含了用于操作Excel的自定义类或函数库。在这些文件中,可能会有以下关键代码片段: 1. **打开Excel应用和工作簿**: ```...
在VBS(Visual Basic Script)中控制Excel时,常见的操作包括: 1. 创建Excel对象:`oExcel = CreateObject("Excel.Application")` 2. 显示或隐藏Excel窗口:`oExcel.Visible = True/False` 3. 修改Excel标题:`...
【QTP(QuickTest Professional)与Excel函数交互】 在自动化测试中,QTP(现在称为UFT,Unified Functional Testing)是一种流行的工具,用于执行功能测试和回归测试。它支持多种技术,包括与Excel文件的交互,这...
8. **自动化流程**:在QTP测试脚本中,可以将生成Excel报告的部分封装为一个单独的函数,然后在测试执行完毕后调用该函数,实现自动化报告生成。 在【qtp制造EXCEL报表_VBScript】这个文件中,可能包含了实现上述...
### QTP实现自动读取Excel的关键知识点 #### 一、QTP简介 QTP(Quick Test Professional)是一款功能强大的自动化测试工具,它主要用于自动化回归测试和功能测试,能够支持多种类型的软件应用程序,如Web应用、桌面...
虽然具体实现没有提供,但可以想象它可能使用了 Microsoft Office 的自动化接口,如 `Application` 对象,或者 VBA (Visual Basic for Applications) 来操作 Excel 工作簿。 `GetXml` 函数是用于从 XML 文件中获取...
在实际操作中,我们需要确保`ReadDataFromExcel`和`WriteResultToExcel`这两个函数在`calcexcel.vbs`中已经定义好,能够正确地读取和写入Excel数据。同时,我们还需要注意处理可能出现的错误,例如文件不存在、权限...
QTP Excel函数.docX QTP:EXCEL报告输出格式,源码.docx qtp常用方法.txt QTP代码参考框架.txt QTP多种函数使用方法.doc QTP技术集锦.doc QTP识别和操作对象的原理.doc 1 自动化测试的实践-应用QTP测试框架.ppt 3 TD...
除了Web和Excel操作外,QTP还可以进行数据库操作,例如查询数据: ```vb Dim res, cmd, sql Set res = CreateObject("ADODB.Recordset") Set cmd = CreateObject("ADODB.Command") cmd.ActiveConnection = ...
总结,QTP自定义函数通过VBS实现了对FTP操作的控制以及测试报告的个性化生成,这极大地增强了测试脚本的灵活性和实用性。通过理解这些核心概念和示例代码,你将能够更好地适应各种自动化测试场景,并提升工作效率。
3. **函数和方法**:如`Description`函数用于描述对象,`Click`、`Type`等是对象的方法,用于模拟用户操作。 4. **变量**:用于存储数据,如`Dim myVar`声明一个变量。 5. **控制结构**:如`For...Next`循环、`If....
在测试过程中,如果需要将数据库中的数据导入到Excel,QTP也提供了相应的操作方法,这通常涉及到数据库操作和Excel操作的知识。 此外,QTP工具还包含了其它高级功能,如在QTP中使用Outlook发送邮件、如何在QTP中...
文档`MY_QTP公共函数说明(2).doc`则可能是对这些自定义函数的详细说明,提供了每个函数的用途、参数、返回值以及如何在测试脚本中调用它们的示例。这样的文档对于团队协作和代码维护至关重要,因为它确保了所有测试...
此外,QTP支持数据驱动测试,允许从外部数据源(如Excel、Access)导入数据,使测试用例能覆盖多种输入组合。这大大提高了测试的覆盖率和效率。 最后,QTP还提供了详尽的报告和分析功能,包括测试结果的可视化展示...
根据给定的信息,我们可以整理出一系列与QTP(QuickTest Professional)相关的常用基本函数及其功能说明。QTP是一款广泛应用于自动化测试领域的工具,通过这些基本函数可以帮助用户更好地编写测试脚本,实现各种测试...