问题
Currently I am using the below code to close all the browsers except the ALM browser from where I run the test suite from. However When I run the suite from ALM, the below code identifies 2 browsers - ALM browser and the test case browser. It first closes the test case browser and when it executes the iteration for the ALM browser, it says the browser is not identified when it tries to find the name of the browser. I am not sure why it counts it as a browser if it cant identify it later. Any thoughts on how to resolve this?
Dim oBrDes
Dim oBrObjList
Dim objIndex
Set oBrDes=Description.Create
oBrDes("micclass").Value = "Browser"
Set oBrObjList=Desktop.ChildObjects(oBrDes)
N = oBrObjList.count-1
For objIndex=0 to N
If(oBrObjList(objIndex) is nothing) then
'Do Nothing
Else
name = lcase(oBrObjList(objIndex).GetROproperty("name"))
If (Instr(1,name,"quality center") <> 0 or Instr(1,name,"automatic runner") <> 0 or name <> "") then
value = oBrObjList(objIndex).getroproperty("visible")
If(trim(value) <> "True") then
'Do Nothing
Else
oBrObjList(objIndex).close
End If
End If
End If
Next
Set oBrObjList=Nothing
Set oBrDes=Nothing
回答1:
Another option is to use ALM explorer.
Check this link for more information.
By using this you do not need to worry about closing any browser.
回答2:
In Tools ⇒ Options ⇒ GUI Testing ⇒ Web
there is an Ignore ALM checkbox, this may be interfering with the Browser identification. Try setting/unsetting this checkbox and see if this solves your problem.
来源:https://stackoverflow.com/questions/32034243/qtp-uft-close-all-browsers-except-qc-alm