Automation 将测试用例的通过/失败从QTP写入QC
我的目标是最终使用QTP将测试用例结果从Excel写回QC。我设计了一个自动化框架,但需要将这些结果传递到质量中心的相应测试用例中。我有这段代码,它在“tcase(j).Field(“TC_STATUS”)=test_STATUS”行给我一个“一般运行错误” 我调试了它,它看起来工作良好,直到那一行。有什么建议吗Automation 将测试用例的通过/失败从QTP写入QC,automation,qtp,hp-quality-center,hp-uft,Automation,Qtp,Hp Quality Center,Hp Uft,我的目标是最终使用QTP将测试用例结果从Excel写回QC。我设计了一个自动化框架,但需要将这些结果传递到质量中心的相应测试用例中。我有这段代码,它在“tcase(j).Field(“TC_STATUS”)=test_STATUS”行给我一个“一般运行错误” 我调试了它,它看起来工作良好,直到那一行。有什么建议吗 test_set_name = "test" test_name = "test1" test_status = "FAILED" Call connect_to_QC()
test_set_name = "test"
test_name = "test1"
test_status = "FAILED"
Call connect_to_QC()
Call update_test_status(test_set_name,test_name ,test_status)
'Closing the TD connection
udv_tdc.releaseConnection
Function connect_to_QC
qcUser = ""
qcPassword = ""
qcDomain = ""
qcProject = "Web_"
folder_path="Root\" ' the path of the folder which contains your test set
udv_qcServer = "<server:port/qcbin>"
Set udv_tdc = CreateObject("TDApiOle80.TDConnection")
'Initialise the Quality center connection
udv_tdc.InitConnectionEx udv_qcServer
'Loging the username and password
udv_tdc.Login qcUser, qcPassword
'connecting to the domain and project
udv_tdc.Connect qcDomain, qcProject
End Function
Function update_test_status(test_set_name, test_name,test_status)
folder_path="Root\EMS - Engagement Management System\EMS Test Team\EMS - Work Source\" ' the path of the folder which contains your test set
set udv_tdc = Qcutil.QCConnection
Set TSetFact = udv_tdc.TestSetFactory
Set tsTreeMgr = udv_tdc.TestSetTreeManager
Set TestSetFolder1=tsTreeMgr.NodeByPath(folder_path)
set tsff = TestSetFolder1.TestSetFactory.Filter
tsff.Filter("CY_CYCLE")= test_set_name
set tsl = tsff.NewList()
If tsl.count = 0 Then
Print "Test set with the name " & test_set_name & " is not found "
End If
For i=1 to tsl.count
Set ts = tsl.Item(i)
Set test_case_filter = ts.TSTestFactory.Filter
filter_string= Chr(34) & "*" & test_name & "*" &Chr(34)
test_case_filter.Filter("TS_NAME")=filter_string
Set tcase=test_case_filter.NewList()
If tcase.count = 0 Then
Print "Test case with the name " & test_name & " is not found "
End If
For j=1 to tcase.count
tcase(j).Field("TC_STATUS")= test_status
tcase(j).Post
Next ' End of test CASE loop
Next 'End of test SET loop
End Function
test\u set\u name=“test”
test_name=“test1”
测试状态=“失败”
调用connect_to_QC()
调用更新测试状态(测试设置名称、测试名称、测试状态)
'关闭TD连接
udv_tdc.释放连接
功能连接到质量控制
qcUser=“”
qcPassword=“”
qcDomain=“”
qcProject=“网络”
folder_path=“Root\”包含测试集的文件夹的路径
udv_qcServer=“”
设置udv_tdc=CreateObject(“TDApiOle80.TDConnection”)
'初始化质量中心连接
udv_tdc.InitConnectionEx udv_qcServer
'登录用户名和密码
udv_tdc.Login qcUser,qcPassword
'连接到域和项目
udv_tdc.Connect qcDomain,qcProject
端函数
函数更新\测试\状态(测试\设置\名称、测试\名称、测试\状态)
folder_path=“Root\EMS-Engagement Management System\EMS Test Team\EMS-Work Source\”包含测试集的文件夹的路径
设置udv_tdc=Qcutil.QCConnection
设置TSetFact=udv_tdc.TestSetFactory
Set tsTreeMgr=udv_tdc.TestSetTreeManager
Set TestSetFolder1=tsTreeMgr.NodeByPath(文件夹路径)
设置tsff=TestSetFolder1.TestSetFactory.Filter
tsff.Filter(“周期”)=测试集名称
设置tsl=tsff.NewList()
如果tsl.count=0,则
打印“名为“&Test\u set\u name&”的测试集未找到”
如果结束
对于i=1到tsl计数
设置ts=tsl.项目(i)
设置test\u case\u filter=ts.TSTestFactory.filter
过滤器字符串=Chr(34)&“*”&测试名称&“*”&Chr(34)
test\u case\u filter.filter(“TS\u NAME”)=filter\u字符串
Set tcase=test\u case\u filter.NewList()
如果tcase.count=0,则
打印“名为”的测试用例,未找到测试名称
如果结束
对于j=1到tcase.count
tcase(j).字段(“TC_状态”)=测试_状态
tcase(j).邮政
下一个“测试用例循环结束”
下一个“测试集循环结束”
端函数
您是否能够访问测试实例的其他属性:在for循环中,是否可以打印出测试实例的名称(print tcase(j).name
)?为什么不直接访问status属性(tcase(j).status=test\u status
)?