location_city Bengaluru schedule Jun 30th 11:30 AM - 12:15 PM place Lalit 1 people 37 Interested

Time waits for no one in a rapid, constantly evolving Digital Era. In this session you will learn how Appium, an open source test automation tool, is playing a significant role in bringing the extreme fast changes to the market in a real-time digital environment.

Mobile Banking apps involves extensive testing due to multiple data variations, multiple app states, complex app flows, secured authentication, integration with third party apps, need of tests in different test environments, complex/secured back-end systems. Achieving automation with these complexity is not so easy, it comes with lot of challenges to get the benefit of automation. This session helps one to understand the complexity involved in automating the banking app or similar native application and solutions for the same.

Will also walk through the journey of our CICD - Integration of MobileLabs into our automation to achieve the highly reliable parallel runs on real physical devices.


Outline/Structure of the Case Study

  • Intro of Mobile Banking (Native App) - Automation
  • Various Challenges and solutions for the enterprise banking automation
    • Maintaining app statue during failure for iOS & Android Native apps
    • Achieving SSO jump via automation
    • Handling complex app flows & multiple app states
    • Write once, test anywhere with various data conditions on multiple environment
    • How to handle complex back end and burnable test data
  • CICD Journey with Appium
    • Grid with emulators/simulators - Challenges
    • Integration of in house Mobile Labs with Selenium Grid to achieve faster and reliable parallel runs on physical devices.
  • Native automation framework overview with CI
  • Benefits

Learning Outcome

  • Take away the solutions for most common challenges faced in any native mobile automation.
  • To understand the complexity involved in automating any secured/complex native application and solutions for the same.
  • How to achieve faster parallel executions in Mobile Labs - mobile device cloud in integration with Selenium Grid.

Target Audience

Test Engineers, DevOps, Anyone working on automation with selenium or Appium

Prerequisites for Attendees

  • Participants should have the basic idea of automation, basic knowledge on selenium or
  • Interest and passion towards test automation.
schedule Submitted 1 year ago

Public Feedback

comment Suggest improvements to the Speaker
  • Parthibamanikandan Balakrishnan
    reply Reply

    Hello Pavithra,

    Any luck with automating push notification using this framework? Looking forward to hear from you on handling out of app activities such as actioning the push notification or deeplink to some external url  /SSO.


    • Pavithra Navaneeth
      By Pavithra Navaneeth  ~  1 year ago
      reply Reply

      Yes it handles push notification in android and deep link/SSO in both iOS/android. Will be discussing some of these solutions on the session.

  • Pooja Shah
    By Pooja Shah  ~  1 year ago
    reply Reply

    Hi Pavithra,

    Thanks for proposing this talk. Is there any of your previous video link on any of your talk? Or if not, it would be great if you could just share/attach a short 1-2 minutes video shoot where you can just give insights on why for an attendee it's a useful topic or what are you going to talk.

    • Pavithra Navaneeth
      By Pavithra Navaneeth  ~  1 year ago
      reply Reply

      Hi Pooja,

      Thanks for your comment !

      I do not have the video link for now. I have mentioned some of the challenges and solutions in details in my reply to Ashley. However Ill do a short video on this and attach it within a day or two.


  • Ashley Hunsberger
    By Ashley Hunsberger  ~  1 year ago
    reply Reply

    Interesting, thank you for the submission... I see a lot of potential here for a great talk.

    I think this one sentence captures the heart of the content "Will walk through the journey of our CICD implementations, challenges we faced, how we overcome those challenges and achieved the highly reliable parallel runs on real physical devices."

    I think each paragraph could almost be a talk on it's own, however - I appreciate the context preparing me for your journey in CI/CD. I would just be mindful of what you _really_ want to talk about. There are a lot of good nuggets of information in here, and grouped/organized well, have a lot of merit.

    What _were_ the challenges you faced? I'm very interested in the resistance you faced and the emotional response behind that. Are users walking away with tips to overcome those challenges or avoid them?

    Is Appium the focus of the talk, or a tool you just happened to use? 

    Do you think there are parallels in banking enterprise application best practices and other industries? 

    My advice would be to pick one of the topics therein, and dive into it as a talk. That said, if all of this information can fit within the time allotment, with careful organization and story telling, I could see how all of this ties together.

    Also, if this is your first time speaking, I also recommend the program Speak Easy (speaking-easy.com) - where, if selected, you can request a mentor to help you prepare for your talk! 

    • Pavithra Navaneeth
      By Pavithra Navaneeth  ~  1 year ago
      reply Reply

      Hi Ashley, Thanks a lot for your detailed feedback and encouragement. 

      As you mentioned each paragraph could be a topic on its own. However, here I would like to present my overall journey of automation with Appium in Banking industry.

      1. On what basis we decided to go ahead with Appium.

      2. Challenges we faced with appium terms (one example from Abstract - Second paragraph):

      • There is a limitation in iOS Appium to switch between apps in a single driver session. Especially when we are running in the Grid environment - each node gets registered  in hub with full reset -Appium server flag configuration.
      • We mainly use this flag for CI - Grid runs to ensure that it always installs the new version of the app (app download process is automated in CI configuration).
      • Having this flag it restricts to switch between say our native app and Phone Settings app in the same session. If we try to switch; it uninstalls our native app and then launches Settings app, thereby loosing the context of our Native app in Settings.
      • Here I will show, whats the workaround we implemented in framework to overcome this issue - how to switch between native and settings app (& vice versa) without uninstalling the native app. This is applicable even for switching between our native and SMS app to get OTP.
      • Whats the other alternatives we implemented to overcome the above issues without switching between apps at all.

      3. Challenges we faced with banking perspective: (Few examples from Abstract - Second paragraph)

      • We have N number of Test environments each with thousands of data variations. To achieve automation with single script-multiple Test data & with multiple environments, Ill touch upon how Appium can be utilised with various TestNG annotations in combination with our wrapper methods. 
      • How do we ensure the clean state of the banking app for every test method, for e.g: as you know any secured authenticated app needs user to be registered at the first place. We do not want to register the user for every test case, so we register once and continue with whole suite of functionality to save the execution time. When there are failures in between with this structure, we cannot refresh the app like in browser. I will showcase here how to go the specific state of the app in android/iOS using specific appium capabilities.

      4. To answer your question - resistance faced?

      • When we started with automation, we didn't get much of support from other stakeholders (other than QA world), because the benefits of automation cannot be visible at the very first stage. It needs lot of investments for time & efforts with zero outcome for first few months. 
      • Also when it comes to automation challenges in enterprise world, first thing that comes to every one's mind is licensing tool rather than going with open source. 
      • With respect to automation execution in CI terms, there was a major blocker due to test environment issues and re-usability of test data.

      Based on the above issues/resistance, I will briefly highlight upon some of our internal activities /setups we carried out as part of 'Continuous improvements' to overcome the same.

      5. Is Appium the focus of the talk ?

      Though the topic gives the wide coverage on all different challenges w.r.t  appium, banking, CICD implementation - we couldn't have achieved any of this within a limited time & free of tool cost without Appium. Appium gets the focus while mentioning the framework details and appium challenges. 

      6. Are parallels in banking enterprise application best practices and other industries?

      I hope you are talking about the parallel automation executions in CI (if I am not wrong). Yes it is one of the most important factor for automation execution and in best practices since it helps us to achieve faster runs and to have more device coverage at a same time. This in turn helps any project team to achieve faster feedback and thus faster release cycles.

      Note: If you mean to ask about parallel runs in banking terms (like parallel session with same user login or registration) - I did not mean that as any of the banking app doesn't allow this for security reasons. We achieve parallel runs by using different users for different flows on various devices.

      7. Are users walking away with tips to overcome those challenges or to avoid them?

      Yes the take away is both: avoid some of the technical  challenges w.r.t  discussed appium & automation challenge space and tips to overcome some challenges w.r.t integrated systems and test data issues.

      8. I can deep dive in to specific topic and talk about it, but as I mentioned I would like to showcase my real time case study/story telling of mobile automation in our space. With my overall testing experience I have seen how things can get into false track if we don't take automation in right perspective. Also, I have seen people knowing most of these implementation theoretically in bits and pieces but mainly lacking to integrate each of these at right time with right tools. 

      I am sure for users who really wanted to implement automation but lacks certain integration pieces and solution for challenges - this case study would really motivate them and push them to achieve it with some of our tips/tricks, best practices and solutions.

      9. First time speaker? - Speak Easy mentor

      Yes I am first time speaker in Selenium conference, I am happy to go with Speak Easy Mentor to gain more confidence and support.


      • Ashley Hunsberger
        By Ashley Hunsberger  ~  1 year ago
        reply Reply

        Thank you for the very thoughtful response!  I think it helped clear up in my mind the flow of the talk, how each section could be covered, and I think if crafted carefully will fit fine while still telling a compelling story. 

        My apologies for item 6 re: parallels. I used the wrong word - I meant correlations. (that is, what is common - or, conversely - different - about banking industry compared to other areas). 

        Hope all is well!

        • Pavithra Navaneeth
          By Pavithra Navaneeth  ~  1 year ago
          reply Reply

          Thanks for the clarification. Sorry I overlooked the context for Pt6. 

          Yes there are more stuffs common with respect to UI or API automation in any industry. Any native/web apps share commonness in terms of how its being developed - tools, softwares which are being used remains the same, only the functional flows vary. Few differences with banking is its being more secured, complex back end integrated systems, extensive and sensitive data.

  • Liked Simon Stewart

    Simon Stewart - Fix a Bug, Become a Committer

    Simon Stewart
    Simon Stewart
    Project Lead
    The Selenium Project
    schedule 2 years ago
    Sold Out!
    480 Mins

    Have you ever wondered how Selenium works under the covers? Do you get frustrated with locators not locating, pages not loading, or browsers behaving inconsistently from one run to the next? Selenium is an attempt to unify thousands of disparate elements across a wide spectrum of challenges into a single, common interface that works seamlessly with all the major browsers - and yet only a handful of volunteers work to maintain this gigantic effort. If you would like to enhance your own Selenium experience while contributing back to the software that has defined so many of our careers, come to this workshop. In it we'll dissect the different elements of Selenium, dive into its internals, learn how it was built and how to make changes to it, and even write a unit test you can contribute on the same day!