Option Explicit Private Declare Function SetCursorPos Lib "user32" _ (ByVal x As Long, ByVal y As Long) As Long Sub Main() 'open Windows Explorer in "My Computer" Window("Desktop Window").Attach ListView("Index=1").Select "CD Drive (E:)", tpMouseRight PopupMenuEx2 "Properties" Window("Application=Explorer.exe Classname='#32770'").Attach Button("Caption=OK").Click End Sub Private Function PopupMenuEx2(sMenuPath As String) As Boolean Dim iMenuCount As Integer Dim sMenuSplit As Variant Dim iMenuPos As Integer SetCursorPos 1, 1 Window.MouseMove 1, 1 'Note that this is important. This is to minimize code in SelectMenuItem SendKeys "{DOWN}", True sMenuSplit = Split(sMenuPath, "~") For iMenuCount = 0 To UBound(sMenuSplit) SelectMenuItem sMenuSplit(iMenuCount), iMenuCount > 0 If iMenuCount = UBound(sMenuSplit) Then SendKeys "{ENTER}", True Exit For Else SendKeys "{RIGHT}", True End If Next End Function Private Function SelectMenuItem(ByVal sMenuStr As String, isSubMenu As Boolean) As Integer Dim mnu As TMenu Dim ti As TMenuItem Dim i As Integer Dim sAttachName As String Const DELAY = 100 sAttachName = Window.Application sAttachName = "Application=" & sAttachName & " ClassName='#32768'" If isSubMenu = False Then Set mnu = Window(sAttachName).GetMenu(tpPopupMenu) Else Set mnu = Window(sAttachName).GetMenu(tpMenu) End If For i = 1 To mnu.Count Set ti = mnu.GetItem(i) If ti.Text = sMenuStr Then Sleep DELAY, tpPauseMilliSeconds Exit Function End If If Not (ti.IsSeparator) Then Sleep DELAY, tpPauseMilliSeconds SendKeys "{DOWN}", True End If Next End Function~ts
Saturday, August 23, 2008
Handle popup menus manually in TestPartner
One of the areas where TestPartner 6.1.x is challenged in controlling application under test (AUT) is Popup Menus. It handles it one time but sometimes it complains that the menu is not detected but it is clearly infront of the screen. Though it is working ~80% of the time but Murphy's law has it that if anything can go wrong, it will. What I have come up so far is to handle popup menus manually. See below for the code, so far it seems to meet my needs.
Subscribe to:
Post Comments (Atom)
Configuring TUN/TAP virtual network interface for use with QEMU on Xubuntu 24.04
Configuring TUN/TAP virtual network interface for use with QEMU on Xubuntu 24.04 I am planning to run qemu-system-ppc to play around QEMU ...

-
Tried to update my Ubuntu host today and it did pickup that new version of VirtualBox is available (4.1.8). All other packages installed pro...
-
Installing MonoDevelop in OpenSUSE 12.2 from its repository was very easy. When running it for the first time though I got the message: Th...
-
Tried to run GenerateProjectFiles.bat to build Unreal Engine from source ( link ), but got error like below: C:\>Users\x\UnrealEngi...
No comments:
Post a Comment