These were the slides for the second appium meetup held at the Gamesys in London, presented by Dan Cueller and Sergio Neves Barros
The demo project mentioned in the slides can be found here:
https://drive.google.com/file/d/0ByIdcWPvw1I3Ny1QWkJzZWpvbzA/view?usp=sharing
http://www.techforum.prathidhwani.org/appium/index.html
Appium Basics
Appium Desktop
Android Locator Types and Inspector Tools
Appium Capabilities
Mobile Interactions - Swipe and Scroll
Page Object Model and Dependency Injection
Real Device v/s Emulators / Simulators
iOS Automation
Cloud Automation
Appium Tips and Tricks
Please follow the steps in the below link to configure your system for the workshop
https://medium.com/@syamsasi/setting-up-appium-on-windows-and-ubuntu-ea9a73ab989
This is a presentation about mobile apps testing using Appium. The presentation conrtains tips on comprehensive testing of apps written for various devices and platforms.
Presentation by Yaroslav Pernerovskyy (Lead Test Engineer, GlobalLogic, Kyiv), delivered at UA Mobile, November 22, 2014.
More details - http://uamobile.org
Appium Interview Questions and Answers | EdurekaEdureka!
**Appium Certification Training: https://www.edureka.co/appium-training-mobile-automation-testing **
This Edureka PPT on Top 50 Appium Interview Question will help you to prepare yourself for Software Testing Interviews. It covers questions for beginners, intermediate and experienced professionals.
Selenium Testing playlist: https://goo.gl/NmuzXE
Selenium Blog Series: http://bit.ly/2B7C3QR
Software Testing Blog Series: http://bit.ly/2UXwdJm
Follow us to never miss an update in the future.
YouTube: https://www.youtube.com/user/edurekaIN
Instagram: https://www.instagram.com/edureka_learning/
Facebook: https://www.facebook.com/edurekaIN/
Twitter: https://twitter.com/edurekain
LinkedIn: https://www.linkedin.com/company/edureka
Android UI Testing with Appium
This presentation covers:
- how appium works
- setting up test development environment with AndroidStudio
- running tests
- UI automation best practices
- common problems with automation
Mobile automation testing with selenium and appiumBugRaptors
Appium runs on real devices and emulators. It takes the Selenium commands from your test code and translates them into a readable format for UI Automator, using the WebDriver JSON Wire Protocol. The UI Automator testing framework lets you test your user interface (UI) efficiently by creating automated functional and UI test cases that can be run against your app on one or more devices.
Finding the right test framework is the key for getting your automated process right. This slide-show is a list of a few automated UI test frameworks, each with its characteristics, for Android and iOS.
Getting Started with Mobile Test Automation & AppiumSauce Labs
Organizations today rely more and more on their mobile apps for their business. Many organizations today are seeing over 50% of their web traffic coming in via mobile devices and In some cases the mobile app is the only way customers interact with the business. In this Webinar, Sauce Labs’ partner, Infostretch will cover best practices in implementing Appium to enable you to quickly automate your mobile tests.
Developed by Sauce Labs and a thriving community of open source contributors, Appium is a cross-platform automation framework for testing mobile web, native, and hybrid applications.
In this webinar, hear the latest about Appium version 1.3.x from project lead Jonathan Lipps as he takes us on a tour of the stability improvements and features the team has added since the Appium 1.0 release back in May of 2014.
The tools and practices refined over the last decade by web developers have not crossed over easily into the mobile community. Mobile devs have been without tools like continuous integration and automated testing, which enable delivery of high-quality apps more rapidly. A key piece of the solution for mobile is Appium, an open-source, cross-platform, language-agnostic mobile automation framework you can use to write automated UI tests for Android and iOS apps (native, hybrid, web), to be run on emulators or devices.
In this talk we will explore the philosophy that underlies the work behind Appium, including the open-source nature of Appium’s diverse, active and friendly community. Then, after a brief explanation of the technology that powers Appium, we’ll move into the technical portion of the talk, where attendees will see easy it is to write Appium scripts using the WebDriver protocol in their favorite language, and integrate Appium tests into a CI system using Selenium Grid or Sauce Labs.
Finally, we’ll look at some concrete examples of how Appium has been used in a large project with 20 Android Apps at Swiss Post to dramatically improve mobile QA. Ultimately, the talk provides an argument for moving from manual QA to automated testing, an understanding of the mobile automation landscape, and a solid introduction to Appium, which leading projects and companies around the world have chosen as their mobile automation framework of choice.
Join Appium expert Jonathan Lipps and Perfecto as we take you through the latest Appium tips and tricks. Find out what’s new with Appium and learn advanced test automation best practices, including:
* Proper use of object identifiers
* Benefits of using deep links to avoid test flakiness
* Cross platform test automation best practices
* Leveraging Appium to test application upgrades
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsAmazon Web Services
Today’s cutting-edge companies have software release cycles measured in days instead of months. This agility is enabled by the DevOps practice of continuous delivery, which automates building, testing, and deploying all code changes. This automation helps you catch bugs sooner and accelerates developer productivity. In this session, we’ll share the processes that Amazon’s engineers use to practice DevOps and discuss how you can bring these processes to your company by using a new set of AWS tools (AWS CodePipeline and AWS CodeDeploy). These services were inspired by Amazon's own internal developer tools and DevOps culture.
http://www.techforum.prathidhwani.org/appium/index.html
Appium Basics
Appium Desktop
Android Locator Types and Inspector Tools
Appium Capabilities
Mobile Interactions - Swipe and Scroll
Page Object Model and Dependency Injection
Real Device v/s Emulators / Simulators
iOS Automation
Cloud Automation
Appium Tips and Tricks
Please follow the steps in the below link to configure your system for the workshop
https://medium.com/@syamsasi/setting-up-appium-on-windows-and-ubuntu-ea9a73ab989
This is a presentation about mobile apps testing using Appium. The presentation conrtains tips on comprehensive testing of apps written for various devices and platforms.
Presentation by Yaroslav Pernerovskyy (Lead Test Engineer, GlobalLogic, Kyiv), delivered at UA Mobile, November 22, 2014.
More details - http://uamobile.org
Appium Interview Questions and Answers | EdurekaEdureka!
**Appium Certification Training: https://www.edureka.co/appium-training-mobile-automation-testing **
This Edureka PPT on Top 50 Appium Interview Question will help you to prepare yourself for Software Testing Interviews. It covers questions for beginners, intermediate and experienced professionals.
Selenium Testing playlist: https://goo.gl/NmuzXE
Selenium Blog Series: http://bit.ly/2B7C3QR
Software Testing Blog Series: http://bit.ly/2UXwdJm
Follow us to never miss an update in the future.
YouTube: https://www.youtube.com/user/edurekaIN
Instagram: https://www.instagram.com/edureka_learning/
Facebook: https://www.facebook.com/edurekaIN/
Twitter: https://twitter.com/edurekain
LinkedIn: https://www.linkedin.com/company/edureka
Android UI Testing with Appium
This presentation covers:
- how appium works
- setting up test development environment with AndroidStudio
- running tests
- UI automation best practices
- common problems with automation
Mobile automation testing with selenium and appiumBugRaptors
Appium runs on real devices and emulators. It takes the Selenium commands from your test code and translates them into a readable format for UI Automator, using the WebDriver JSON Wire Protocol. The UI Automator testing framework lets you test your user interface (UI) efficiently by creating automated functional and UI test cases that can be run against your app on one or more devices.
Finding the right test framework is the key for getting your automated process right. This slide-show is a list of a few automated UI test frameworks, each with its characteristics, for Android and iOS.
Getting Started with Mobile Test Automation & AppiumSauce Labs
Organizations today rely more and more on their mobile apps for their business. Many organizations today are seeing over 50% of their web traffic coming in via mobile devices and In some cases the mobile app is the only way customers interact with the business. In this Webinar, Sauce Labs’ partner, Infostretch will cover best practices in implementing Appium to enable you to quickly automate your mobile tests.
Developed by Sauce Labs and a thriving community of open source contributors, Appium is a cross-platform automation framework for testing mobile web, native, and hybrid applications.
In this webinar, hear the latest about Appium version 1.3.x from project lead Jonathan Lipps as he takes us on a tour of the stability improvements and features the team has added since the Appium 1.0 release back in May of 2014.
The tools and practices refined over the last decade by web developers have not crossed over easily into the mobile community. Mobile devs have been without tools like continuous integration and automated testing, which enable delivery of high-quality apps more rapidly. A key piece of the solution for mobile is Appium, an open-source, cross-platform, language-agnostic mobile automation framework you can use to write automated UI tests for Android and iOS apps (native, hybrid, web), to be run on emulators or devices.
In this talk we will explore the philosophy that underlies the work behind Appium, including the open-source nature of Appium’s diverse, active and friendly community. Then, after a brief explanation of the technology that powers Appium, we’ll move into the technical portion of the talk, where attendees will see easy it is to write Appium scripts using the WebDriver protocol in their favorite language, and integrate Appium tests into a CI system using Selenium Grid or Sauce Labs.
Finally, we’ll look at some concrete examples of how Appium has been used in a large project with 20 Android Apps at Swiss Post to dramatically improve mobile QA. Ultimately, the talk provides an argument for moving from manual QA to automated testing, an understanding of the mobile automation landscape, and a solid introduction to Appium, which leading projects and companies around the world have chosen as their mobile automation framework of choice.
Join Appium expert Jonathan Lipps and Perfecto as we take you through the latest Appium tips and tricks. Find out what’s new with Appium and learn advanced test automation best practices, including:
* Proper use of object identifiers
* Benefits of using deep links to avoid test flakiness
* Cross platform test automation best practices
* Leveraging Appium to test application upgrades
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsAmazon Web Services
Today’s cutting-edge companies have software release cycles measured in days instead of months. This agility is enabled by the DevOps practice of continuous delivery, which automates building, testing, and deploying all code changes. This automation helps you catch bugs sooner and accelerates developer productivity. In this session, we’ll share the processes that Amazon’s engineers use to practice DevOps and discuss how you can bring these processes to your company by using a new set of AWS tools (AWS CodePipeline and AWS CodeDeploy). These services were inspired by Amazon's own internal developer tools and DevOps culture.
The presentation on Appium was done during #ATAGTR2017, one of the largest global testing conference. All copyright belongs to the author.
Author and presenter : Sunket Ingale
An overview of Appium mobile testing framework, presented at the Selenium Israel Meetup (http://bit.ly/1yyY80D) on February 2014, by Daniel Puterman, Applitools Head Developer.
Building High Quality Android ApplicationsLeif Janzik
The slides from my talk "Building High Quality Android Applications with Continuous Integration and Automated device tests" from April 9th at DroidCon 2013 in Berlin
My final talk on the Appium mobile grid and getting started.
- Benefits of parallelization.
- The pros and cons of both cloud services and local setup.
- Getting connected devices information.
- Setting up Grid and Appium servers.
- Getting critical metadata to insert into Allure.
- The benefits of distributed tests vs parallel and when best to use them.
- Setup examples for Android and iOS.
- Leveraging cloud services by sending only selected tests to the cloud.
- Reduce service costs.
- Expose your app to a greater amount of devices and os's.
- A demo of Wunderlist's local grid.
Dev ops on aws deep dive on continuous delivery - TorontoAmazon Web Services
Today’s cutting-edge companies have software release cycles measured in days instead of months. This agility is enabled by the DevOps practice of continuous delivery, which automates building, testing, and deploying all code changes. This automation helps you catch bugs sooner and accelerates developer productivity. In this session, we’ll share the processes that Amazon’s engineers use to practice DevOps and discuss how you can bring these processes to your company by using a new set of AWS tools (AWS CodePipeline and AWS CodeDeploy). These services were inspired by Amazon's own internal developer tools and DevOps culture.
Closer To the Metal - Why and How We Use XCTest and Espresso by Mario Negro P...Sauce Labs
In this SauceCon 2019 presentation, Mario describes the practices that ABN AMRO adopted in mobile teams when it comes to testing native applications on real devices. Since using Espresso and XCUITest is still relatively uncommon for large apps and there are various unique challenges due to being in an EU-regulated industry with various security restrictions, Mario will share the ABN AMRO team’s experiences, including:
- A brief architectural overview of the Mobile Banking app: why it is all native (Objective-C/Swift and Java/Kotlin), how it communicates with other apps and websites
- Why ABN AMRO choose to adopt Espresso and XCUITest: the advantages and the limitations of this choice
- How ABN AMRO runs their test pipelines to spread them across time and devices and prevent teams from being blocked
Philip Shurpik "Architecting React Native app"Fwdays
React Native становится все более зрелым фреймворком для создания кросс платформенных мобильных приложений. Доклад основан на нашем опыте создания production приложения - от архитектуры до тестирования и CI.
Рассмотрим вопрос переиспользования кода при разработке для разных платформ- что и сколько процентов можно переиспользовать и как этого достичь.
Поговорим о том, как можно очень просто сделать offline-first приложение для чтения и создания данных. И чем нам в этом могут помочь Redux и Redux persist.
Разберем, как максимально просто сделать навигацию в приложении.
И, конечно же, какое production приложение без тестирования и continuous integration? Рассмотрим компонентное тестирование с Enzyme и интеграционное с Appium. А также, как максимально приблизить процесс deploy к тому, чему мы привыкли в web, с помощью CodePush.
Mobile applications Development - Lecture 9
LAB
PhoneGap Development Environment
Debugging PhoneGap Applications
This presentation has been developed in the context of the Mobile Applications Development course at the Computer Science Department of the University of L’Aquila (Italy).
http://www.di.univaq.it/malavolta
NCDevCon 2017 - Cross Platform Mobile AppsJohn M. Wargo
Building cross-platform mobile apps using open source tools. A manic paced session where I build the same app across 4 different open source mobile development frameworks.
DevOps on AWS: Deep Dive on Continuous Delivery and the AWS Developer ToolsAmazon Web Services
Today’s cutting-edge companies have software release cycles measured in days instead of months. This agility is enabled by the DevOps practice of continuous delivery, which automates building, testing, and deploying all code changes. This automation helps you catch bugs sooner and accelerates developer productivity. In this session, we’ll share the processes that Amazon’s engineers use to practice DevOps and discuss how you can bring these processes to your company by using a new set of AWS tools (AWS CodePipeline and AWS CodeDeploy). These services were inspired by Amazon's own internal developer tools and DevOps culture.
Listen to the keynote address and hear about the latest developments from Rachana Ananthakrishnan and Ian Foster who review the updates to the Globus Platform and Service, and the relevance of Globus to the scientific community as an automation platform to accelerate scientific discovery.
Enhancing Research Orchestration Capabilities at ORNL.pdfGlobus
Cross-facility research orchestration comes with ever-changing constraints regarding the availability and suitability of various compute and data resources. In short, a flexible data and processing fabric is needed to enable the dynamic redirection of data and compute tasks throughout the lifecycle of an experiment. In this talk, we illustrate how we easily leveraged Globus services to instrument the ACE research testbed at the Oak Ridge Leadership Computing Facility with flexible data and task orchestration capabilities.
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus
As part of the DOE Integrated Research Infrastructure (IRI) program, NERSC at Lawrence Berkeley National Lab and ALCF at Argonne National Lab are working closely with General Atomics on accelerating the computing requirements of the DIII-D experiment. As part of the work the team is investigating ways to speedup the time to solution for many different parts of the DIII-D workflow including how they run jobs on HPC systems. One of these routes is looking at Globus Compute as a way to replace the current method for managing tasks and we describe a brief proof of concept showing how Globus Compute could help to schedule jobs and be a tool to connect compute at different facilities.
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Globus
The Earth System Grid Federation (ESGF) is a global network of data servers that archives and distributes the planet’s largest collection of Earth system model output for thousands of climate and environmental scientists worldwide. Many of these petabyte-scale data archives are located in proximity to large high-performance computing (HPC) or cloud computing resources, but the primary workflow for data users consists of transferring data, and applying computations on a different system. As a part of the ESGF 2.0 US project (funded by the United States Department of Energy Office of Science), we developed pre-defined data workflows, which can be run on-demand, capable of applying many data reduction and data analysis to the large ESGF data archives, transferring only the resultant analysis (ex. visualizations, smaller data files). In this talk, we will showcase a few of these workflows, highlighting how Globus Flows can be used for petabyte-scale climate analysis.
Code reviews are vital for ensuring good code quality. They serve as one of our last lines of defense against bugs and subpar code reaching production.
Yet, they often turn into annoying tasks riddled with frustration, hostility, unclear feedback and lack of standards. How can we improve this crucial process?
In this session we will cover:
- The Art of Effective Code Reviews
- Streamlining the Review Process
- Elevating Reviews with Automated Tools
By the end of this presentation, you'll have the knowledge on how to organize and improve your code review proces
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...informapgpstrackings
Keep tabs on your field staff effortlessly with Informap Technology Centre LLC. Real-time tracking, task assignment, and smart features for efficient management. Request a live demo today!
For more details, visit us : https://informapuae.com/field-staff-tracking/
Enterprise Resource Planning System includes various modules that reduce any business's workload. Additionally, it organizes the workflows, which drives towards enhancing productivity. Here are a detailed explanation of the ERP modules. Going through the points will help you understand how the software is changing the work dynamics.
To know more details here: https://blogs.nyggs.com/nyggs/enterprise-resource-planning-erp-system-modules/
We describe the deployment and use of Globus Compute for remote computation. This content is aimed at researchers who wish to compute on remote resources using a unified programming interface, as well as system administrators who will deploy and operate Globus Compute services on their research computing infrastructure.
How Recreation Management Software Can Streamline Your Operations.pptxwottaspaceseo
Recreation management software streamlines operations by automating key tasks such as scheduling, registration, and payment processing, reducing manual workload and errors. It provides centralized management of facilities, classes, and events, ensuring efficient resource allocation and facility usage. The software offers user-friendly online portals for easy access to bookings and program information, enhancing customer experience. Real-time reporting and data analytics deliver insights into attendance and preferences, aiding in strategic decision-making. Additionally, effective communication tools keep participants and staff informed with timely updates. Overall, recreation management software enhances efficiency, improves service delivery, and boosts customer satisfaction.
Developing Distributed High-performance Computing Capabilities of an Open Sci...Globus
COVID-19 had an unprecedented impact on scientific collaboration. The pandemic and its broad response from the scientific community has forged new relationships among public health practitioners, mathematical modelers, and scientific computing specialists, while revealing critical gaps in exploiting advanced computing systems to support urgent decision making. Informed by our team’s work in applying high-performance computing in support of public health decision makers during the COVID-19 pandemic, we present how Globus technologies are enabling the development of an open science platform for robust epidemic analysis, with the goal of collaborative, secure, distributed, on-demand, and fast time-to-solution analyses to support public health.
A Comprehensive Look at Generative AI in Retail App Testing.pdfkalichargn70th171
Traditional software testing methods are being challenged in retail, where customer expectations and technological advancements continually shape the landscape. Enter generative AI—a transformative subset of artificial intelligence technologies poised to revolutionize software testing.
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Shahin Sheidaei
Games are powerful teaching tools, fostering hands-on engagement and fun. But they require careful consideration to succeed. Join me to explore factors in running and selecting games, ensuring they serve as effective teaching tools. Learn to maintain focus on learning objectives while playing, and how to measure the ROI of gaming in education. Discover strategies for pitching gaming to leadership. This session offers insights, tips, and examples for coaches, team leads, and enterprise leaders seeking to teach from simple to complex concepts.
Prosigns: Transforming Business with Tailored Technology SolutionsProsigns
Unlocking Business Potential: Tailored Technology Solutions by Prosigns
Discover how Prosigns, a leading technology solutions provider, partners with businesses to drive innovation and success. Our presentation showcases our comprehensive range of services, including custom software development, web and mobile app development, AI & ML solutions, blockchain integration, DevOps services, and Microsoft Dynamics 365 support.
Custom Software Development: Prosigns specializes in creating bespoke software solutions that cater to your unique business needs. Our team of experts works closely with you to understand your requirements and deliver tailor-made software that enhances efficiency and drives growth.
Web and Mobile App Development: From responsive websites to intuitive mobile applications, Prosigns develops cutting-edge solutions that engage users and deliver seamless experiences across devices.
AI & ML Solutions: Harnessing the power of Artificial Intelligence and Machine Learning, Prosigns provides smart solutions that automate processes, provide valuable insights, and drive informed decision-making.
Blockchain Integration: Prosigns offers comprehensive blockchain solutions, including development, integration, and consulting services, enabling businesses to leverage blockchain technology for enhanced security, transparency, and efficiency.
DevOps Services: Prosigns' DevOps services streamline development and operations processes, ensuring faster and more reliable software delivery through automation and continuous integration.
Microsoft Dynamics 365 Support: Prosigns provides comprehensive support and maintenance services for Microsoft Dynamics 365, ensuring your system is always up-to-date, secure, and running smoothly.
Learn how our collaborative approach and dedication to excellence help businesses achieve their goals and stay ahead in today's digital landscape. From concept to deployment, Prosigns is your trusted partner for transforming ideas into reality and unlocking the full potential of your business.
Join us on a journey of innovation and growth. Let's partner for success with Prosigns.
Prosigns: Transforming Business with Tailored Technology Solutions
Appium Meetup #2 - Mobile Web Automation Introduction
1. §
January 2015
Appium Meetup #2
Mobile Web Automation Introduction
Sergio Neves Barros
QA Automation Technical Lead
2. January 2015
1. Who and what
2. A bit of history
3. Setup
4. Writing tests
5. Test execution (demo)
6. Questions
Overview
3. January 2015
Who and what
Who I am:
For over 10 years I have been working as a tester across various industries such as Insurance,
Banking and Gaming. Around 3 years ago I joined Gamesys and we have been developing and
maintaining our test automation and training QA’s on testing and test automation best
practices. As a team we have developed various drivers to interact/interrogate the
technologies we test (e.g. Flash/HTML5 Canvas) and also contributed to open source tools.
What we do at Gamesys:
Gamesys develops and manages various sites such as Jackpotjoy, SunBingo, HeartBingo and
Virgin Games for which we develop and test a wide variety games such as Slots, Bingo and
Poker. We also work with quite a few technologies such as HTML5 Canvas, Flash,
Android and iOS, which as you can imagine makes testing a real challenge.
4. January 2015
A bit of history
My question (April 2013):
“I am trying to grab the window_handles on the WebViewApp and this is working
fine on a iphone simulator, however it's throwing an unhandled exception
on a real device”
Jonathan Lipps:
“This is unfortunately expected. Webview support works by creating a TCP connection
to the remote webkit debugger run in Safari/webviews. Even though
the real device might be running a webkit debugger, it's almost
definitely not forwarding that port to the host, where appium is running.
Someone will need to figure out how to reverse engineer the USB debugging
protocol and forward the port from the device to the host---
sounds like it will be challenging at best and maybe impossible at worst.”
Luckily someone had already figured a way to forward requests to a physical
device and we just connected the dots.
5. January 2015
Setup - Safari on iOS Simulator
To run a your mobile web tests on a simulator you will need the following tools.
• Xcode (including command line tools)
• Can be installed from the App store or from the Apple developer portal.
• Any additional Simulators can be downloaded in preferences.
• Nodejs
• Simply download and install nodejs.
• Appium
• To run the simulator tests you can use:
• the Appium app
• or clone the project and run “./reset.sh --ios”
6. January 2015
In addition to the previous setup, to run your mobile web tests on safari on a physical device you will need
the Safari Launcher and the ios-webkit-debugger-proxy.
• Safari Launcher app
• Add “--real-safari” argument when running reset.sh
• To build & install safari you will need a valid development profile (figure 1)
• NOTE: You can not use the Appium App to install the safari launcher on a device.
Figure1: iOS development provisioning profile setup
• ios-webkit-debugger-proxy
• Can be installed using brew
• Turn on web inspector (available on iOS 6.0 or higher) in Safari settings.
• NOTE: due to an issue with the proxy you should use the proxy launcher script.
Setup – Safari on iOS Device
Device Id(s)
App Id (or wildcard)
Development Certificate(s)
Development Provisioning
Profile
7. January 2015
Setup – Chrome on Android Device
To run a your mobile web tests on an Android Device with Chrome you will need:
• Android SDK
• Make sure you install the relevant API for the version of Android you want to test against.
• Just run “android” in the terminal and the android sdk manager will launch where you can
install additional API’s.
• Also make sure to:
• configure ANDROID_HOME
• and add both the tools & platform-tools folder to your PATH.
• Nodejs
• Simply download and install nodejs.
• Appium
• To run the emulator tests you can use the Appium app or clone the project and run:
• “reset.sh –android”
NOTE: You can not (simply) install chrome on an emulator through the app store
(as emulator doesn’t have the the app store). You will have to find a valid version of
the chrome app (built for the right architecture).
8. January 2015
Writing tests – Useful tools
Chrome Debugger (Android):
• You can use the Chrome Debugger by going to chrome://inspect on your desktop chrome.
• Make sure that:
• Your android device is attached and unlocked
• Remote debugging is turned on in developer options
• Chrome is installed on the android device.
Safari Debugger (iOS):
• You can use the Safari Debugger by going to the develop menu
• Make sure that:
• Your iOS device is attached and unlocked or your simulator is started.
• That “web inspector” is turned on (iOS 6.0 and higher) on your device.
The debuggers will allow you to:
• Inspect web elements e.g. to get element identifiers.
• Execute JavaScript on the pages
• Trick: xpath checker: $x("//*[@name='q']")
• Trigger a listener (mouse up/down etc..)
• See any errors in the javascript logs.
• See the page (Chrome only)
9. January 2015
Writing tests – Java Client
• Appium Java Client:
• The drivers extend the RemoteWebDriver
• The iOS Driver and Android Driver both have platform specific
configuration and methods already added.
• Simply add the maven dependency to your project (e.g. similar to
Selenium) and start using the iOS Driver/Android Driver
• Can be found on github:
• https://github.com/appium/java-client
• Selenium Tests Reusable:
• When writing your tests you can re-use your existing selenium tests
• The only real difference will be the desired capabilities:
• platformName: iOS, Android, FirefoxOS
• platformVersion: 4.2.2, 8.1, 7.1
• automationName: Appium, Selendroid (Android specific)
• deviceName: iPad 2, Galaxy S5
• browserName: Chrome, Safari
10. January 2015
Executing tests
Starting Appium Server (app/terminal):
• You can either use the appium app to start the server
• And it will display all the possible arguments
• Or you can run the following command in the terminal:
• > node lib/server/main.js
• Add “—help” to see all the arguments
Demo Time!
This is the bit where I make a fool out of myself with a live
demo …murphy’s law.
Note: the demo maven project can be found here
For more information on myself:
https://www.linkedin.com/profile/view?id=12608927
For more information on gamesys go to:
http://www.gamesyscorporate.com/
Link to quote:
https://groups.google.com/forum/#!topic/appium-discuss/u1ropm4OEbY
The communicate with safari on the simulator appium uses the WebInspector Protocol.
No obstacles to communicate between simulator and Appium
However on a physical device the communication happens through the cable (and therefore we need the ios-webkit-debugger-proxy)
You also need the safariLauncher to navigate to a url which triggers safari to be launched (as instruments can not launch safari on a physical device).
The unique identifier of a device can be found in Xcode (xcode \ window \ devices)
You can also provide your own code signing identity and/or profile.
Description: https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/mobile-web.md
Two fixes for instability with ios-webkit-debug-proxy:
Use the following command in the appium folder to launch the proxy.
./bin/ios-webkit-debug-proxy-launcher.js -c <udid>:27753
Or use the fix by James
https://github.com/jchuong/ios-webkit-debug-proxy
You will have to build and run it yourself using the following commands:
> ./autogen.sh
> ./configure
> make
src/.ios_webkit_debug_proxy –c <udid>:27753 –d
Once you have the Android SDK setup and installed run the command “android” in the terminal to show the API version and the Android versions.
NOTE: To build the latest version of Selendroid you need Java 7.
Tutorial on how to debug chrome on Android:
https://developer.chrome.com/devtools/docs/remote-debugging
Protocol that google uses to debug.
https://developer.chrome.com/devtools/docs/protocol/1.1/index
Safari Web Inspector:
https://developer.apple.com/safari/tools/