Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Mobile Deep Links Testing

Mobile Deep Links Testing

Mobile deep links are used more and more, but still, a lot of developers and testers face various issues trying to implement this tech. GetSocial team has 4+ years of experience in writing our own deep linking solution. We came across several changes in the mobile ecosystem including mobile OSs, browsers and deep linking standards.

Medium article with the same topic https://blog.usejournal.com/implement-high-quality-mobile-deep-links-tips-and-tricks-dd24f70088e8

Df45970eb8f0e9c2a2570ecd9c5d3237?s=128

Diana Pinchuk

March 26, 2018
Tweet

More Decks by Diana Pinchuk

Other Decks in Technology

Transcript

  1. Deep Links testing: Keep calm and stay focused Diana Pinchuk

    QA @ GetSocial.im
  2. - Tested a lot of stuff - GDG Lviv &

    GDG DevFest Ukraine co-organizer - Love memes :D
  3. Agenda • What is deep link • DL use cases

    • Developers pain • Testing tips • Q&A
  4. What is deep linking

  5. Deep linking Mobile deep linking, is the process of using

    a URI to link to specific pages or locations within a mobile application.
  6. It’s similar to web links https://www.pinterest.com/pin/123/ => pinterestapp://pin/123

  7. Deep linking

  8. Deferred deep linking

  9. Contextual deep linking Alice prepared this pin for you!

  10. Use cases

  11. Deep links have variable application • Invites to the app

    • Personalized onboarding experience • Referral campaigns • Retargeting • Make e-2-e testing faster with direct navigation • Android Instant Apps use Android App Links
  12. The benefits from deep links usage • Enhance the user

    experience • Improve User Retention, Engagement, & Usage => 77% D2 retention • Help Re-Engage Users • Strengthen Marketing efforts • Improve App Discoverability => >50% of users install an app after friend’s recommendation Word of mouth is one of the most effective ways of getting users to install your app
  13. Developer’s pain

  14. Support various deep linking technologies Tech / OS version iOS

    < 9 iOS > 9 Android < 6 Android > 6 URI Schemes x x x Universal links x Android App Links x Chrome Intents x x Presentation about DL standards https://goo.gl/hg4Ss8
  15. URI schemes market://details?id=com.example.myapp Deeplink Purpose travelbrand:// Open the app travelbrand://registration

    Open the app to the shopping cart checkout screen travelbrand://hotel/123 Open the app to a particular product ID
  16. iOS: Universal links (UL) limitations • UL won’t work if

    you paste the link into the browser URL field • UL work with a user driven element click across domains • UL cannot be triggered via Javascript, unless it is part of a user action
  17. Android specifics • Firing an intent is not that easy

    • The difference between deep links and App links: the disambiguation dialog won’t appear
  18. Create links that work across different browsers Amazing presentation about

    Android browsers https://goo.gl/jbHLx6
  19. Native integrations with social media and messaging apps

  20. source

  21. Tracking attribution • Google Play INSTALL_REFERRER is not reliable •

    Some apps (e.g. Facebook) remove referrer • Apple App Store has no proper method to send specific parameters after install to the app on the first launch Solution => Fingerprints
  22. Analyse what you’ve collected

  23. Prevent installation fraud Google Play Referrer API Apple install validation

    Flag installs on the backend side
  24. But the biggest pain is... Maintenance • e.g. Facebook bug

    • or Twitter update • or iOS 11.2.x bug • or any other bug that appears right now...
  25. Do you want to build your own solution?

  26. NO GetSocial Build vs Buy ebook http://bit.ly/GS-book

  27. Tester’s pain

  28. Tester’s pain • Big e2e cases are difficult to automate,

    sometimes impossible • Fragmentation hell (OS, browsers, messengers) => different deep linking flows • A lot of dependencies on the third-parties • Maintenance… again
  29. DL does not open the app… make sure • …

    you are clicking on a deep link • … deep link is not wrapped (e.g. http://bit.ly/AIA-QA) • … you have configured your app correctly • … you understand the expected behavior of deep links • … the deep link domain matches your link domain
  30. Helpful tools

  31. UA switcher Chrome extension https://goo.gl/pPmwHp

  32. Install referrer tester https://goo.gl/hFLmZC

  33. Check webhooks https://requestb.in/ or https://hookbin.com/ Request bin stopped supporting public

    version 5 days ago :’(
  34. Subscribe to third-party app updates (e.g. AppShopper for iOS)

  35. …and use spreadsheets

  36. None
  37. None
  38. Testing tips • Stay informed about all updates in OS,

    frameworks etc • Keep structure in your test results • Subscribe to your competitors blogs • Be patient
  39. Conclusions • Be prepared to spend a lot of time

    for testing • Don’t reinvent the wheel • Be aware about all updates • Deep links are cool and useful
  40. Thank you! It’s time for questions :) pinchuk.diana@gmail.com @diana_pinchuk