02-05-2009, 12:36 PM
(This post was last modified: 02-06-2009, 05:26 AM by PDAautomator.)
Hi,
I have QTP (Functional Test 9.2) installed with JamoSolutions M-eux for QTP, to attempt to automate the testing of an application on a Windows Mobile 6 PDA. QTP and M-eux records most of the actions and events that occur in the PDA's application interface and there is an action recorded for the selection of an item in the target application's Listbox. However, when the test is played back you can see that the item in the Listbox that is selected is not triggering some event and subsequently a panel under the Listbox that is associated with the item selected is not populated with the selected items details. Then the next action in the test selects an object (a button) on the associated panel, but because the panel hasn't been populated this button does no progress the panel to the next screen. So, the next subsequently script line in the test fails claiming it can not find a ComboBox that should exist.
{please remember this is recorded on a PDA, using a stylus to select the various buttons etc, and commands like ".MoObject([OBJECTNAME]).Tap" represents a stylus tap on the screen.}
The fourth line of script below (each line begins with "MobileDevice...") is where things start to go wrong. During the recording phase this line of script "MoListCtrl("List1").Select "93708"" appears when I select the item "93708" from the Listbox, but during play back when this item is selected the lower panel doesn't update, therefore when the next script line ".MoButton("Login").Push" is executed it doesn't progress to the next panel screen. Then the next script line ".MoComboBox("Attribute").Select "Attribute"" fails because it cannot find a "Attribute" combo box.
Code:
MobileDevice("NomadET0AC01493").MoWindow("Desktop").MoObject("Worker").MoObject("Worker").MoObject("MyTodayScreen").Tap "273","54"
MobileDevice("NomadET0AC01493").MoWindow("Desktop").MoObject("Worker").MoObject("Worker").MoObject("MyTodayScreen").Tap "316","50"
MobileDevice("NomadET0AC01493").MoWindow("Work Order Summary").MoListCtrl("List1").Select "93708"
MobileDevice("NomadET0AC01493").MoWindow("Work Order Summary").MoButton("Login").Push
MobileDevice("NomadET0AC01493").MoWindow("Work Order Summary").MoComboBox("Attribute").Select "Attribute"
MobileDevice("NomadET0AC01493").MoWindow("Work Order - Assets").MoListCtrl("List1").Select "1368"
If there was some way of capturing the lower level details of the Listbox on a mobile device before and after selecting an item in that Listbox, I would like to know what it is?
I think the answer may lay in a command like "…).MoListCtrl("List1").Tap", which could represents the stylus tapping on the ListBox item. It appears that an Event is triggered after you lift the stylus off the screen, and that inturn populates the associated panel with the selected items details. Is anybody familiar with these VBScript tap events?