Mobile testing done right with Appium

Web and mobile UI testing has never been so simple. All the tools that you need to create a solid maintainable app are at your fingertips. Big and small companies are already using it heavily to provide their users the best possible experience. The new kid on the block is the Appium project, which recently turned into version 1.0. It opens the gates to serious mobile testing automation for which many developers and companies were waiting for.During this talk I will tell you why Appium - a completely free open source project - was created and what are its connotations with Selenium. Importance of mobile testing is not something you can neglect anymore. With a wide range of technologies (such as hybrid, web, native), which can be used to create a mobile user experience, comes a great challenge for automation tools developers.
 
If you're serious about your mobile software you have to do continuous integration for it.  I'll show how easy it is to set it up and run an example test with only few lines of code.
 
Furthermore, I'll show you some experimental applications of this technology that is being currently researched and that might shape the near future.

 
10 favorite thumb_down thumb_up 3 comments visibility_off  Remove from Watchlist visibility  Add to Watchlist
 

Outline/structure of the Session

I'd like to start with some real-world examples of software development failures that had a big impact on the image of couple well known brands. The purpose of that is to show how testing is important. Of course there are different aspects of testing. Mobile UI is becoming more and more important these days as present mobile apps developers create complicated UI flows and there's lots going on in the mobile land.

Open source has already matured in that area and provides answers for doing functional testing for mobile (hybrid, web, native). Appium is a completely free open source project that lets developers around the word build tests suites for their software. I'll show that it's super easy to set them up and run an example tests with only few lines of code.

At the end of the talk I'll show some experimental applications of this automation technology using robots and real devices. Also, as the World moves forward and those projects are constantly developed, I'll tell you what are the plans for the future.

Learning Outcome

You will learn:

- what appium is and why it was created

- what are the other solutions avaialble on the market

- what appium has in common with selenium

- how to create a sample test

- what features are avaialable in appium

- what are the plans for further appium development

- what are experimental applications of appium

- .. and more ;-)

Target Audience

developers, product managers, project managers, software architects, dev ops

schedule Submitted 3 years ago

Comments Subscribe to Comments

comment Comment on this Proposal
  • Bernard Kobos
    By Bernard Kobos  ~  3 years ago
    reply Reply

    Bumped up time to 45min ;-) I won't get into detail on advanced topics - just enough to show people what possiblieties they have with Appium.

  • Dave Haeffner
    By Dave Haeffner  ~  3 years ago
    reply Reply

    Agreed. I like the idea of having an Appium talk for people unfamiliar with mobile testing that are looking to learn more. Toning down the ambition and potentially aiming for 45 minutes could go a long way here.

  • Marcus Merrell
    By Marcus Merrell  ~  3 years ago
    reply Reply

    There is no way this topic can adequately be approached in 30 minutes. I would encourage either doing a separate workshop on this topic, or see if one has already been proposed. Alternatively, we could consider removing some of the "ambition" from this one to make it a bit more digestible


  • Liked dima kovalenko
    keyboard_arrow_down

    dima kovalenko - Scaling and managing Selenium Grid

    45 mins
    Talk
    Intermediate

    Managing the Selenium Grid can be very difficult, especially as you scale it up.  This session will demonstrate how we were able to scale the Selenium Grid with multiple operating systems, in multiple data centers across many continents. With the use of Selenium Grid Extras, and open source project, we were able to get much better control of individual nodes, manage WebDriver versions and much more. 

  • Liked Naresh Jain
    keyboard_arrow_down

    Naresh Jain - Selenium DeTox for Achieving the Right Testing Pyramid

    Naresh Jain
    Naresh Jain
    Founder
    ConfEngine.com
    schedule 3 years ago
    Sold Out!
    45 mins
    Case Study
    Intermediate

    Our project was a classic example of Selenium gone wild! As our team embraced the test automation journey, we went crazy and implemented tons of Selenium tests, one for every permutation possible. Soon we realized our feedback cycles were delayed. Our builds were taking hours instead of minutes. And we had a set of complex, fragile tests, which resulted in a lot of false-negative scenarios and finger pointing.

    At this point, our team had realized that this is not the path forward. We decided to seriously look at our Selenium tests. We pretty much moved 80% of our Se tests to lower-layers (non-GUI based) tests. And now we have the right testing pyramid on our project.

    Join us, as we explain our journey (strategy, techniques, tools, mindset-change and approaches we took) through this transition.

  • Liked Isaac Murchie
    keyboard_arrow_down

    Isaac Murchie - Selenium in the palm of your hand: Appium and automated mobile testing

    Isaac Murchie
    Isaac Murchie
    Software Developer
    Sauce Labs
    schedule 3 years ago
    Sold Out!
    45 mins
    Talk
    Intermediate

    The mobile world is growing, and it has never been easier to test applications—native, web, or hybrid—using Appium, a free, open-source implementation of the Selenium protocol for automating mobile devices. I will show how Appium, which is in active development and recently shipped version 1.0, allows developers and testers to harness all the power of the native testing frameworks provided by the mobile device manufacturers, but within the context familiar to Selenium users. 

    Further, Appium provides a very good opportunity for looking at the challenges for a technology designed to automate web browsers as it moves into a new realm. I will discuss how functionality was repurposed for this new context, as well as the ways in which the protocol was extended and made more flexible in light of the the expanded use case.

    As a case study in extended functionality, I will discuss the gesture API, which allows a standardized way to automate the sorts of advanced mutli-finger gestures used on modern mobile devices.

  • Liked Artem
    keyboard_arrow_down

    Artem - Allure framework - crystal clear reports for your selenium tests [in any language]

    Artem
    Artem
    Test Team Lead
    Yandex
    schedule 3 years ago
    Sold Out!
    30 mins
    Talk
    Beginner

    It's pretty cool to have selenium test results clear to everyone on the team. There are lots of frameworks in every language that aim to simplify test writing. But only few can provide sharp presentation of test execution output. Yandex team is working on Allure (https://github.com/allure-framework/allure-core/wiki) - an open-source framework designed to create crystal clear reports. Because of module structure it integrates easily with almost any testing tool, no matter which language you use. In my talk i will describe the basic principles and show how to integrate Allure reporting in your existing projects.

  • Liked Naresha K
    keyboard_arrow_down

    Naresha K - Better Selenium Tests with Geb

    Naresha K
    Naresha K
    Agile Coach
    AgileFAQs Tech
    schedule 3 years ago
    Sold Out!
    60 mins
    Tutorial
    Beginner

    Selenium tests can quickly grow in size and could become difficult to maintain, unless adhered to DRY principles to the extreme. Geb is built on top of Selenium WebDriver, which brings in the expressive power of groovy to WebDriver API. Geb can be used for all browser automation tasks that can be achieved with WebDriver. This talk will show how Geb can help us to write concise tests that are highly readable. 

    Prior knowledge of Groovy is NOT essential to get started with Geb, however would be helpful in advanced use cases.

  • Liked Sushant Choudhary
    keyboard_arrow_down

    Sushant Choudhary - How we trained our dragon built on enterprise practices to adopt and fail fast with OSS.

    30 mins
    Talk
    Intermediate

    Traditionally companies built over enterprise infrastructure and practices have been hesistant to adopt new practices,framework or tools especially one which can change with a single commit on github. So was the case when mobile portfolio of one of the largest airline was developed and tested in an agile way and striving for continous delivery.

    This is a story of remote-enablement and developing a sense of confidence in the drgaon to go open source and base its complete testing infrastructure on OSS.Today their Mobile testing with its own challenges posed by H/W,OS and Design guidelines is under the OSS umbrella with practices like BDD and compliance with test pyramid adopted with a scalable automation framework built on Ruby,Cucumber,Watir Webdriver and Calabash.

  • Liked Jim Evans
    keyboard_arrow_down

    Jim Evans - Embrace and Extend: How the Selenium Project Convinced the World's Largest Closed-Source Company to Participate

    Jim Evans
    Jim Evans
    Contributor
    Selenium Project
    schedule 3 years ago
    Sold Out!
    60 mins
    Talk
    Beginner

    Microsoft. Just the name of the company alone can send some open-source software activists into fits of apoplexy. From the days when executives of the company compared open-source software to "a virus", the company has been seen as incredibly hostile to open-source software. It is surprising how much has changed over the years.

    This is the story of how the Selenium project has managed its relationship with the software company, from the initial, tentative, often contentious and borderline hostile reaching out, to today's open engagement. The story is told through the prism of the Internet Explorer Driver project, with slight digressions to the .NET bindings and other Microsoft technology stacks. The journey is funny, sometimes frustrating, but always entertaining, and there may be a surprise announcement or two.

  • Liked Vijay Kumar K
    keyboard_arrow_down

    Vijay Kumar K - I18N /L10N testing using Selenium

    20 mins
    Talk
    Beginner

    Internationalization(I18N), Localization(L10N) testing helps to ensure the application is instinctive, explicable and correct for the people who are accessing from different geographical locations and from various languages.

    We are prenting the session on How selenium helps in Portal content verification, live language translation during chat and mobile language translation.

  • Liked Ivan Shubin
    keyboard_arrow_down

    Ivan Shubin - Automated testing for responsive design on multi-screen devices using Galen Framework

    60 mins
    Demonstration
    Intermediate

    iPhone 3g, iPhone 4s, iPhone 5s, Samsung Galaxy, Samsung Galaxy Note, IE, Chrome, Firefox etc... Can you automate layout testing for these with one test?
    At eBay we had to refine our strategy for responsive design implementation. As part of that we wanted to build a stable automated test set that would cover layout testing on multiple screen resolutions. Now whenever there is a small change to a CSS that breaks the design on some specific resolutions - we notice it right away. Do you also have to test your website on different devices? Would you like to automate that and save time? It's easy as 1, 2, 3: write your Selenium test (with a bit of magic of Galen), include it in your continuous integration environment (e.g. Jenkins), get feedback with detailed reports.
    In this presentation we would like to show you how to build a stable solution for testing responsive layout with an open sourced tool Galen Framework. We'll introduce you to Test Driven Development for Responsive Design. We'll show you how to execute tests in Selenium Grid to cover the browser compatibility testing and how we adapted the responsive layout testing at eBay.

  • Liked Santiago S Ordoñez
    keyboard_arrow_down

    Santiago S Ordoñez - Enter JS Unit testing: Cross Browser, reliable, fast and developer friendly

    45 mins
    Talk
    Intermediate

    Ever been frustrated by slow, unreliable Selenium tests that won't work in all browsers? Chances are you're doing it wrong.

    Selenium is an excellent tool, but as all tools, should only be used for the right purpose.

    In this talk I want to walk the audience through current approaches, frameworks, tools and the advantages or using Javascript Unit Tests to get extensive client-side coverage, reliable and millisecond-speed results.

    Leverage client-side unit testing as a complement to a more focussed and stable set of functional Selenium tests. Use the power of Sauce Labs' Javascript API to run these across all browsers with very little effort.

     

     

  • Liked Andrei Solntsev
    keyboard_arrow_down

    Andrei Solntsev - The fast and the continuous

    45 mins
    Talk
    Intermediate

    Do you still run tests on Selenium?
    Are you still trying to parallelize your tests?
    Do you still dream about own Selenium Grid with 30 servers and running tests in few hours?
    Do you still think that TestNG is coolers than JUnit?

    Then you definitely should come and listen: 5 things that you are doing wrong in software testing.

  • Liked Kartihkeyan
    keyboard_arrow_down

    Kartihkeyan - Alien Driven Testing with Arquillian Graphene

    Kartihkeyan
    Kartihkeyan
    MTS
    Owler
    schedule 3 years ago
    Sold Out!
    45 mins
    Demonstration
    Intermediate

     Arquillian LogoAutomating a massive application with tons of user stories obviously needs more time and resource as we need to concentrate much on maintainability. Still it’s being a big challenge for QA engineers. This session will discuss how Arquillian Graphene (a dialect of Selenium WebDriver) really helpful for developers to lower the effort needed to build a reliable, robust and maintainable functional test suites in an Alien way!

  • Liked Amit Rawat
    keyboard_arrow_down

    Amit Rawat / Rajeev - Testing of Responsive Web Applications using Appium and WebDriver API

    60 mins
    Tutorial
    Intermediate

    All the modern web applications uses HTML5 and RWD (Responsive Web Design) to have an optimal viewing experience across a wide range of devices (from mobile phones to desktop computer monitors). Automating these applications and running the scripts on different devices is a bigger challenge.

    How Appium and Selenium WebDriver API can be used to automate these applications and can also address all the challenges like:

    1. Running the Webdriver scripts on iOS Safari and Android Chrome with minimal changes to the scripts.

    2. Working with the Responsive web elements and validating their size and layout on different devices and viewports.

    3. Automating complex gestures like Swipe, Tap, Pull to refresh etc.

    4. Working with HTML5 based geo-locations and simulating the Mobile network bandwidth and latency using Browsermob

     

  • Anand Bagmar
    Anand Bagmar
    Director - Quality
    Vuclip Inc.
    schedule 3 years ago
    Sold Out!
    60 mins
    Experience Report
    Intermediate

    The Test Automation Pyramid is something most of us know, but very few are able to implement it well on the team. Given the power of Selenium and similar frameworks, we love writing more and more tests at the UI layer (also because we love to code) - but as a result we end up in an anti-pattern of an ice-cream cone like Test Automation Pyramid.

    I want to share different dimensions of the Test Automation Pyramid that are implicitly assumed to help us do the right type of automation at the UI layer.

  • Liked Saptarshi Chatterjee
    keyboard_arrow_down

    Saptarshi Chatterjee - Track google search indexing of your website using protractor (Running on selenium server)

    20 mins
    Tutorial
    Intermediate

    1) Protractor is an end to end test framework for AngularJS applications built on top of WebDriverJS and runs on selenium server.

    2) Will build a simple app that will search a particular keyword(or key words) in google and check at what position/page a particular website appears for that search .

    3) respective product owner / SEO experts can ran these test periodically to detect any change in search positioning for their targeted keywords.

    4) Test and Application code needn't be in same repo/server . Seamless integration with  SauceLabs.

  • Liked Prashanth Sams
    keyboard_arrow_down

    Prashanth Sams - Introducing Selenium Reporting Framework - SRF

    Prashanth Sams
    Prashanth Sams
    Automation Lead
    TCS
    schedule 3 years ago
    Sold Out!
    30 mins
    Case Study
    Intermediate

    The main feature of SRF is reporting Selenium Test Results. Selenium Testers are mainly focussed on reporting tools and SRF is going to be the Next generation Report tool for Selenium. I introduce SRF, Selenium Reporting Framework which stands up on all the available frameworks in market [yet to be released]. Will be updating the with report screeenshots sooner here. 

    Attached here is the initial SRF rough draft [20%]. Stay Tuned!! 

  • Liked Jim Evans
    keyboard_arrow_down

    Jim Evans - Introducing Windows Phone Driver

    Jim Evans
    Jim Evans
    Contributor
    Selenium Project
    schedule 3 years ago
    Sold Out!
    60 mins
    Talk
    Intermediate

    In the last few years, use of the Selenium WebDriver API to automate web, hybrid, and native applications on mobile platforms has exploded. The creation and proliferation of such projects as Selendroid, ios-driver, and Appium have given WebDriver users the ability to leverage their exisiting knowledge to the Android and iOS platforms. Windows Phone has not had a similar automation story, until now. This presentation introduces a new, actively-maintained open-source implementation of the WebDriver API designed to be used on the Windows Phone platform.

  • Liked Vijayakumar Kannan
    keyboard_arrow_down

    Vijayakumar Kannan - SAF 2.0 - One automation framework that could test anything on regular and mobile device/simulator

    Vijayakumar Kannan
    Vijayakumar Kannan
    Qae
    personal
    schedule 3 years ago
    Sold Out!
    60 mins
    Demonstration
    Advanced

    Software Automation Framework (SAF) version 2.0 is a inbuilt framework designed and writtten @ WebMD that could automate anything you want from a simple spreadsheet. This framework is written in Java and is an integration of Selenium, Appium, Charles, Selendroid and Rest Services. Using this framework, you can automate anything from regular browser, mobile browser on android/iOS, mobile and hybrid app on android/iOS. There is also an integration to charles for capturing network traffic. This single framework is currently used across all the team members for automation. 

  • Liked Pranjali
    keyboard_arrow_down

    Pranjali / Haritha Hari - Lets BDD Mobile App using Appium

    30 mins
    Demonstration
    Intermediate

    The mobile automation is becoming trending topic these days. Appium is one of the tool used in order to make iOS and Android automation hassle free . This session will focus on basic understanding of  how to automate a mobile app in an agile way using tool appium alongwith its installation, writing and executing a basic script .

    We will see how to setup Mac OSX for ios automation using BDD tool cucumber. Appium is a open source cross platform test automation tool for the hybrid and native iOS,Android and FirefoxOS apps.In the  simple term appium is a server running in the background like Selenium Server

    Key benefits of appium are : 

    1. It is very easy to setup on different platforms.
    2. Can write test in the language of your choice (Ruby,Python,java,PHP Node).
    3. Can still use Selenium Webdriver JSON wire protocol.
    4. Do not need to re-compile Mobile app on different platform.