Cademy logoCademy Marketplace

Course Images

Appium (Selenium)-Mobile Automation Testing from Scratch

Appium (Selenium)-Mobile Automation Testing from Scratch

🔥 Limited Time Offer 🔥

Get a 10% discount on your first order when you use this promo code at checkout: MAY24BAN3X

  • 30 Day Money Back Guarantee
  • Completion Certificate
  • 24/7 Technical Support

Highlights

  • On-Demand course

  • 28 hours 33 minutes

  • All levels

Description

The course is intended to help design and implement industry-standard frameworks using Appium with TestNG Maven, Jenkins, GitHub, Apache Log4J2, and Extent Reports.

Learn everything you need to know about mobile automation (Android+ IOS) even if you've never programmed before. The high-level topics include the following: -Appium features -Appium internal architecture -Configuration setup to run tests on Android and IOS simulators/emulators -Configuration setup to run tests on Android and IOS real devices -How to automate native (Android and IOS) apps using Appium -In-depth explanation of Appium APIs/commands and their usage -Mobile gestures automation, scroll, swipe, long press, tap, and touch actions using Appium By the end of the course, you will be able to automate any (native, hybrid, web) apps in Android/IOS using Appium. All resources and code files to this course are placed here at https://github.com/packtpublishing/appium-selenium--mobile-automation-testing-from-scratch.

What You Will Learn

Automate any (Native, Hybrid, and Web) apps in Android/IOS using Appium
Understand Appium best practices for automating apps
Explore the coding standards in writing mobile automation scripts
Automate mobile browsers like Chrome and Safari
Learn how to verify toast messages for error validations
Configure a real device to system for running Appium tests

Audience

This course is for manual testers, non-programming testers interested in learning automation, web automation testers who are already aware of Selenium WebDriver, and any software engineer who is interested in mobile technologies.

Approach

This course has over 150+ videos to make you a master in mobile automation testing supported with code files and documentation.

Key Features

Design an industry-standard mobile framework that is compatible with Android and iOS platforms * Understand Appium best practices and reusable utilities for automating apps on real devices * Implement end-to-end CI/CD pipeline using Appium with all the framework features

Github Repo

https://github.com/packtpublishing/appium-selenium--mobile-automation-testing-from-scratch

About the Author

Rahul Shetty

Rahul Shetty is the founder and trainer at Rahul Shetty Academy. He is a passionate software tester and has 13 years of rich experience in the IT industry. He has completed more than 300 offline training batches. Rahul has extensive knowledge in web automation testing, mobile automation testing, and API automation testing. He has also worked with various CMM-level organizations and managed the set-up of QA processes for projects.

Course Outline

1. Introduction to Appium and Course

1. Course Agenda

Let's take a quick introduction to the course and see what we are going to cover in it.

2. Appium Features

Let's take a quick introduction to Appium features.

3. Appium Internal Architecture

Let's take a quick introduction to Appium internal architecture.


2. Appium Installation Instructions for Windows and Mac

1. Download Java, Android Studio, and Node Software for Appium Setup

In this video, we will cover how to download Java, Android Studio, and Node software for Appium setup.

2. Set Environment Variable Paths of All Software in Windows

In this video, we will see how to set environment variable paths of all software in Windows.

3. Set Environment Variable Paths of All Software in MAC

In this video, we will explain how to set environment variable paths of all software in MAC.

4. Configure Android Virtual Device/Emulator and Install Appium Server

In this video, we will cover how to configure Android virtual device/emulator and install Appium server.

5. Setting Up Appium Maven Project with Java Client Dependencies

In this video, we will cover setting up Appium Maven project with Java client dependencies.


3. Getting Started with Mobile Testing Using Appium Code

1. What are Desired Capabilities and the First Program to Invoke the App

In this video, we will write our first program to invoke the app.

2. What is UIAutomatorViewer and How it Helps Inspect Objects in Android Apps

In this video, we will cover what UIAutomatorViewer is and how it helps inspect objects in Android apps.


4. In-Depth Understanding of Android Native Apps Automation with Appium

1. Automating app UI Using Xpaths and Text Attributes

In this video, we will cover automating app UI using Xpaths and text attributes.

2. Appium APIs for UI Interaction with IDs and classNames

In this video, we will create Appium APIs for UI interaction with IDs and classNames.

3. Handling Multiple Similar Objects of Apps with Indexes

In this video, we will walk through handling multiple similar objects of apps with indexes.

4. AndroidUIAutomator Usage in Identifying Objects of Apps

In this video, we will cover AndroidUIAutomator usage in identifying objects of apps.

5. TouchActions in Appium (Gestures Automation -1)

In this video, we will explain TouchActions in Appium (gestures automation - 1).

6. Tapping and Long Press Events (Gestures Automation -2)

In this video, we will walk through tapping and long press events (gestures automation -2).

7. Touch Actions Sequence Execution

In this video, we will explore touch actions sequence execution.

8. Strategy for Automating Swiping Event (Gestures Automation -3)

In this video, we will explain the strategy for automating swiping event (gestures automation -3).


5. Advanced Gestures Automation with Key Events Handling Using Appium

1. Demo on Swiping the Clock - Practice Exercises

In this video, we will cover a demo on swiping the clock - practice exercises.

2. How to Automate Scrolling? Gestures Automation -5

In this video, we will cover how to automate scrolling - gestures automation - 5.

3. Drag and Drop on Native Apps with Appium (Gesture Automation -6)

In this video, we will create drag and drop on native apps with Appium (gesture automation - 6).


6. Automation on Real Android Device Apps with Appium and Its Rules

1. Configuring a Real Device to System to Run Appium Tests

In this video, we will cover configuring a real device to system to run Appium tests.

2. Exercises on Real Device - Native Apps Automation

In this video, we will cover exercises on real device - native apps automation.


7. Real-Time Ecommerce App - End to End Practice Exercises

1. Introduction to App Features and Test Cases to Automate

In this video, we will cover an introduction to app features and test cases to automate.

2. Test Case in Filling the Form Details for Shopping

In this video, we will cover a test case in filling the form details for shopping.

3. Verifying Toast Messages for Error Validations

In this video, we will cover verifying toast messages for error validations.

4. Test Case - Scrolling in Product List Example with Appium Android Scroll

In this video, we will cover a test case - scrolling in product list example with Appium Android scroll.

5. Test Case - Dynamically Selecting Product by Scanning List Based on Text

In this video, we will cover a test case - dynamically selecting product by scanning list based on text.

6. Test Case - Validating the Orders in Checkout Page

In this video, we will cover a test case - validating the orders in checkout page.

7. Test Case- Validating Total Amount Generated Functionality

In this video, we will cover a test case - validating total amount generated functionality.

8. Code Optimization with User-Defined Functions

In this video, we will cover code optimization with user-defined functions.


8. Hybrid App Automation with Appium to Switch from Apps to Web Browser

1. Test Case - Validating Mobile Gestures of App ( Tap, Long Press)

In this video, we will cover a testcase - validating mobile gestures of app.

2. How to Handle Objects When Rendered in Web View

In this video, we will cover how to handle objects when rendered in web view.

3. Test Case -Automate Hybrid App with Context Switch

In this video, we will cover a test case - automate hybrid app with context switch.


9. Mobile Chrome Browsers Automation with Appium - Real-Time Examples

1. Desired Capabilities to Run Appium Tests on Mobile Browser

In this video, we will cover desired capabilities to run Appium tests on mobile browser.

2. How to Inspect Chrome Mobile Browser Locators - Tips and Tricks

In this video, we will cover how to inspect Chrome mobile browser locators - tips and tricks.

3. How to Scroll and Put Assertions on Browser Tests with Appium

In this video, we will cover how to scroll and put assertions on browser tests with Appium.


10. Getting Started with iOS Automation Using Appium on MAC

1. Install Xcode and Iphone 12 Simulator

In this video, we will install Xcode and Iphone 12 simulator.

2. Define IOS Desired Capabilities and Invoke the App Through Code

In this video, we will define IOS desired capabilities and invoke the app through code.

3. Inspect IOS Objects with Appium Inspector

In this video, we will inspect IOS objects with Appium Inspector.


11. Automate iOS Advance Gestures Functionalities with Appium

1. Automate Scrolling on IOS Apps

In this video, we will automate scrolling on IOS apps.

2. Appium IOS Automation Part 5 - Automate Picker Wheels (Dropdowns)

In this video, we will cover Appium IOS automation part 5 - automate picker wheels (dropdowns).

3. Appium IOS Automation -Automate Sliders with IOS Element Class

In this video, we will explain Appium IOS automation -automate sliders with IOS Element Class.

4. Strategy in Working with IOS Gestures and App Download

In this video, we will explore the strategy in working with IOS gestures and app download.

5. Performing Long Press Events with IOS Touch Action Class

In this video, we will be performing long press events with IOS Touch Action Class.

6. Performing Tapping Events with IOS Touch Action Class

In this video, we will be performing tapping events with IOS Touch Action Class.


12. iOS Real Device Automation Testing Guidelines with an Example

1. Install Software for Real Device Automation

In this video, we will install software for real device automation.

2. UDID, XcodeOrgId Generation for Real Device Testing

In this video, we will explain UDID, XcodeOrgId Generation for real device testing.

3. Bundle Id Generation and Running the Tests

In this video, we will cover Bundle Id generation and running the tests.


13. Framework Learning Plan

1. How to Start Learning from This Course

In this video, we will understand how to start learning from this course.


14. Appium Framework - Part 1 - Learn TestNG Basics

1. TestNG Installation and Setup in Eclipse

In this video, we will explore TestNG installation and setup in Eclipse.

2. Run Basic TestNG Tests with Test Annotation

In this video, we will run basic TestNG tests with test annotation.

3. Testing Xml File Configuration and Its Importance

In this video, we will explore testing Xml file configuration and its importance.

4. Prioritizing the Test Cases with TestNG

In this video, we will explore prioritizing the test cases with TestNG.

5. Include and Exclude Mechanism to Control Test Cases

In this video, we will explain include and exclude mechanism to control test cases.

6. Executing the Test Cases at Package Level with regex

In this video, we will cover executing the test cases at package level with regex.

7. TestNG Annotations - Part 1

In this video, we will explain TestNG annotations - part 1.

8. TestNG Annotations - Part 2

In this video, we will explain TestNG annotations - part 2.

9. Usage of Groups Functionality in TestNG

In this video, we will cover usage of groups functionality in TestNG.

10. Annotation's Helper Attributes with Examples

In this video, we will cover annotations helper attributes with examples.

11. Parameterizing from TestNG xml File

In this video, we will be parameterizing from TestNG xml file.

12. DataProvider Annotation -Parameterizing Test Cases - 1

In this video, we will cover DataProvider annotation -parameterizing test cases - 1.

13. DataProvider Annotation -Parameterizing Test Cases - 2

In this video, we will cover DataProvider annotation -parameterizing testcases - 2.

14. Listeners Interface in TestNG Framework

In this video, we will explain Listeners interface in TestNG framework.

15. Running Tests in Parallel and Generating Reports

In this video, we will be running tests in parallel and generating reports.


15. Framework Part 2 - Maven (Build Management Tool)

1. Introduction to Maven

In this video, we will explore Maven.

2. Configuration of Maven

In this video, we will explore the configuration of Maven.

3. Creating Maven Project and Understanding its Terminologies

In this video, we will be creating a Maven project and understanding its terminologies.

4. Understanding POM.xml File and Its Dependencies

In this video, we will be understanding POM.xml file and its dependencies.

5. Importance of surefirePlugin in Executing Tests

In this video, we will explore the importance of surefirePlugin in executing tests.

6. Integration of TestNG with Maven

In this video, we will cover the integration of TestNG with Maven.

7. Switching the Tests with Maven Profiling

In this video, we will be switching the tests with Maven profiling.


16. Framework Part 3 - Jenkins - Continuous Integration Tool

1. Importance of Jenkins in Test Frameworks

In this video, we will learn the importance of Jenkins in test frameworks.

2. Install and Configure Jenkins

In this video, we will install and configure Jenkins.

3. Configuring Jenkin Settings and Workspace

In this video, we will be configuring Jenkin settings and workspace.


17. Pageobject Pattern and Page Factory

1. What is Page Object Model?

In this video, we will learn what is page object model.

2. Page Factory Annotations FindBy

In this video, we will cover page factory annotations FindBy.

3. Practical Example Explaining Page Factory Model-1

In this video, we will see a practical example explaining page factory model-1.

4. Practical Example Explaining Page Factory Model-2

In this video, we will see a practical example explaining page factory model-2.


18. Appium Hybrid Framework Design Part - 1 (Design Patterns)

1. Maven Project Template Creation with Workspace Setup

In this video, we will learn Maven project template creation with workspace setup.

2. Configuring Dependencies of the Project in Pom.xml

In this video, we will be configuring dependencies of the project in Pom.xml.

3. Creating Driver Base class for Framework

In this video, we will be creating driver base class for framework.

4. Initializing Smart Global Properties from Config Properties File

In this video, we will be initializing smart global properties from Config Properties file.

5. Converting Project into TestNG and Eliminating Hardcoded Paths

In this video, we will be converting the project into TestNG and eliminating hardcoded paths.

6. Implementing Page Objects for Tests in Framework

In this video, we will be implementing page objects for tests in framework.


19. Appium Hybrid Framework Design Part - 2 (Building Utilities)

1. Make Tests Objects Independent to Drive from Object Classes

In this video, we will learn how to make tests objects independent to drive from object classes.

2. Start and Stop Appium Server Programmatically Through Java

In this video, we will explore start and stop Appium server programmatically through Java.

3. Building Common Utilities for Appium Server Invoke Code

In this video, we will be building common utilities for Appium server invoke code.

4. Starting Emulator on Fly Through Code with User Inputs

In this video, we will be starting emulator on fly through code with user inputs.

5. Fixing Framework Bug by Debugging Code

In this video, we will be fixing framework bug by debugging code.


20. Reporting and CI/CD Integration for the Appium Framework - Part 3

1. Capturing Screenshot on Test Failures Using TestNG Listeners

In this video, we will learn how to capture screenshots on test failures using TestNG Listeners.

2. Generating Excellent Client Html Reports for Test Execution

In this video, we will explore generating excellent client html reports for test execution.

3. Parameterizing Test Data from External Sources Using Data Provider

In this video, we will be parameterizing test data from external sources using data provider.

4. Convert Project to Maven Compatible by Updating pom.xml

In this video, we will be converting project to Maven compatible by updating pom.xml.

5. Sending Global Properties from Maven Commands into Tests

In this video, we will be sending global properties from Maven commands into tests.

6. Integrating Framework Repo into Jenkins CI Tool

In this video, we will be integrating framework repo into Jenkins CI tool.


21. Running Appium Framework on the Cloud Servers with Parallel Execution

1. How to Utilize Cloud Infrastructure such as Browser Stack to Run Appium Tests

In this video, we will learn how to utilize cloud infrastructure such as Browser Stack to run Appium tests.

2. Run Tests on Cloud by Building Generic Capabilities Utility in the Framework

In this video, we will run tests on the cloud by building generic capabilities utility in the framework.

3. Run Appium Tests in Parallel on Cloud with TestNG xml Changes

In this video, we will run Appium tests in parallel on cloud with TestNG xml changes.


22. Understanding Version Control System GIT

1. Introduction to GIT

In this video, we will see an introduction to GIT.

2. Importance of GitHub and its Uses

In this video, we will see the importance of GitHub and its uses.

3. Creating Git Config and Repositories

In this video, we will be creating Git config and repositories.

4. Understanding Staging and Commit in Git

In this video, we will be understanding staging and commit in Git.

5. Add Remote Repository and Push the Committed Code

In this video, we will add remote repository and push the committed code.

6. End to End Working Example on Git Commands -1

In this video, we will look at end to end working example on Git commands -1.

7. End to End Working Example on Git Commands -2

In this video, we will learn end to end working example on Git commands -2.

8. Importance of Branching in GIT

In this video, we will see the importance of branching in GIT.

9. How to Resolve Merge Conflicts with GIT

In this video, we will learn how to resolve Merge conflicts with GIT.


23. Database Connection to Selenium/Appium Test Cases

1. Steps to Connect Database to Selenium Test Cases

In this video, we will learn steps to connect database to Selenium test cases.

2. MySQL Download Instructions

In this video, we will look at MySQL download instructions.

3. MySQL Server Connection Procedure

In this video, we will be looking at MySQL server connection procedure.

4. Creating Database in MySQL Server

In this video, we will be creating a database in MySQL server.

5. Creating Tables in Databases

In this video, we will be creating tables in databases.

6. JDBC ODBC Connection Overview

In this video, we will look at JDBC ODBC connection overview.

7. Integration of Database with JDBC API

In this video, we will look at the integration of database with JDBC API.

8. Steps to Connect Database Info to Selenium - 1

In this video, we will learn steps to connect database info to Selenium - 1.

9. Steps to Connect Database Info to Selenium - 2

In this video, we will be looking at steps to connect database info to Selenium - 2.


24. Java OOPS Basics for Appium/Selenium

1. Java First Program Basics

In this video, we will learn Java first program basics.

2. Java Program Principles

In this video, we will look at Java program principles.

3. Classes and Objects in Java

In this video, we will be looking at classes and objects in Java.

4. Strings in Java

In this video, we will learn strings in Java.

5. Interface Concepts

In this video, we will learn interface concepts.

6. Practical Usage of Interface

In this video, we will look at practical usage of interface.

7. Runtime Polymorphism

In this video, we will look at runtime polymorphism.

8. Inheritance Concepts

In this video, we will learn inheritance concepts.

9. Practical Usage of Inheritance

In this video, we will be looking at practical usage of inheritance.

10. Coding Basics-1

In this video, we will learn coding basics-1.

11. Coding Basics-2

In this video, we will look at coding basics-2.

12. Introduction to Arrays

In this video, we will be looking at an introduction to arrays.

13. Single-Dimensional and Multidimensional Arrays Usage

In this video, we will look at single-dimensional and multidimensional arrays usage.

14. Examples of Arrays

In this video, we will look at examples of arrays.

15. Array Interview Questions

In this video, we will look at interview questions on arrays.

16. Programming Example

In this video, we will look at a programming example.

17. Reverse String -Interview Question

In this video, we will be looking at the reverse string -interview question.

18. Date Class Concepts

In this video, we will be looking at date class concepts.

19. Working with Calendar Objects in Java

In this video, we will look at working with calendar objects in Java.

20. Access Modifiers Basics

In this video, we will look at Access modifiers basics.

21. How Constructor Plays a Crucial Role

In this video, we will be looking at how constructors play a crucial role.

22. Types of Constructors and Their Usage

In this video, we will be looking at types of constructors and their usage.


25. Defect Tracking Tool

1. Defect Management tool- Bugzilla

In this video, we will learn defect management tool- Bugzilla.

2. Bugzilla Features- Logging a Bug

In this video, we will look at Bugzilla features - logging a bug.

3. Bugzilla Features -Search Mechanism for Tracking Bugs

In this video, we will be looking at Bugzilla features -search mechanism for tracking bugs.

4. Common Practices in Bugzilla Tool

In this video, we will learn the common practices in Bugzilla tool.

5. Bugzilla Preference Feature

In this video, we will learn about Bugzilla preference feature.

Course Content

  1. Appium (Selenium)-Mobile Automation Testing from Scratch

About The Provider

Packt
Packt
Birmingham
Founded in 2004 in Birmingham, UK, Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and i...
Read more about Packt

Tags

Reviews