Swipe not working as expected

Mobile Testing, Android App Testing.
tvu
Posts: 195
Joined: Tue Apr 07, 2015 10:47 pm

Swipe not working as expected

Post by tvu » Wed Sep 16, 2015 12:40 am

I have a table (Platformclass = UICollectionView) with the size 320 x 558. Within the table are several containers (platformclass = VVGridViewCell) with the size 100 x 142. Within each container is an image with the same size of 100 x 142.

On my mobile device, the containers render in a 3x4 grid pattern with the fourth row not fully visible on the screen. I am trying to do a swipe up gesture to scroll the container up one row.

I tried to do a swipe gesture with a fix distance of 142 on the table, container and image element, but I can't get it to swipe up exactly one row. All the elements respond the same by moving the container more than one row up. It scrolls up between 1.5 to 2 rows up. I tried perform the swipe on different locations:
- Table element : Center and LowerCenter
- Container and image elements : Center and LowerCenter using one of the containers on the 2nd or 3rd row.

I tried to use TouchStart, TouchMove, TouchEnd, but I get the following error:
Failed to resolve/execute Request handler because an error occured: [Cannot process request. There is no valid request hander for the methodcall 'ReplayTouch' registered]

Is this the expected behavior for a Swipe Gesture? If so, how do I go about moving the container exactly one row?

Thanks!

Ranorex Version: 5.4.1.25490
iPhone 5, iOS 8.2

tvu
Posts: 195
Joined: Tue Apr 07, 2015 10:47 pm

Re: Swipe not working as expected

Post by tvu » Wed Sep 16, 2015 7:10 pm

Seems like I can't perform a swipe operation repeatedly. In the recording, I added three consecutive Swipe Gestures using the table item with a relative start location of ".5; .75". The first action works and the next two has no affect. Use Cache is disabled for all the root folders associated with this item.

Do I need to somehow update this item between actions?

User avatar
Support Team
Site Admin
Site Admin
Posts: 12145
Joined: Fri Jul 07, 2006 4:30 pm
Location: Houston, Texas, USA
Contact:

Re: Swipe not working as expected

Post by Support Team » Fri Sep 18, 2015 1:27 pm

Hello tvu,

Thank you for the detailed description.

The 'Swipe Gesture'-action simulates a manual swipe, which is performed by the user.
Therefore, the swipe action doesn't stop immediately at the specified pixel.

I would suggest using the EnsureVisible()-method on the corresponding container- or image-element.
In order to do this please drag and drop the element from the repository to the action table.
select_invoke_action.png
ensure_visible.png
We are currently analyzing the other issues, which you have reported.
I will update you, when I have new information.

Thank you for your understanding.

Regards,
Johannes
You do not have the required permissions to view the files attached to this post.

tvu
Posts: 195
Joined: Tue Apr 07, 2015 10:47 pm

Re: Swipe not working as expected

Post by tvu » Fri Sep 18, 2015 6:17 pm

Thanks Johannes for the advice.

Basically, the table contains several visible and hidden containers. As I scroll down on the table, hidden ones comes into view and the top rows become hidden. The hidden containers pre-populate, but not in order. There's some logic in our app that determines which of the hidden posters becomes visible as you scroll and I haven't been able to find anything in Spy to help me determine the next hidden poster.

If I know the next hidden poster then I can use EnsureVisible(). Unfortunately, there isn't so I am force to swipe on the visible containers to scroll down the table. This is why I need to be able to know exactly how far I swipe.

If it goes further than desired then I will miss some rows of containers. Is there a touch, drag and untouch mechanism? I thought the TouchStart, TouchMove, TouchEnd would be suitable, but I get those errors.

Thanks again.
Tung

User avatar
Support Team
Site Admin
Site Admin
Posts: 12145
Joined: Fri Jul 07, 2006 4:30 pm
Location: Houston, Texas, USA
Contact:

Re: Swipe not working as expected

Post by Support Team » Tue Sep 22, 2015 2:24 pm

Hello Tung,

Thank you for the explanation.

Regarding the issue of recurring swipe actions, I would suggest trying to perform the swipe action on the parent container of the table-element. In this way it should be possible to perform the swipe action repeatedly.
parent_container.png
Concerning the exact swipe action, one way would be to figure out the relative swipe distance, which swipes exactly to the next row.

Unfortunately, TouchStart / TouchMove / TouchEnd is currently not supported for iOS.
relative_swipe_distance.png
Please let me know if you need more information.

Regards,
Johannes
You do not have the required permissions to view the files attached to this post.