Mobile Agile Automation Testing
- Enter coupon info at checkout
- Early bird deadline: March 31, 2019
CP-M-AAT stands for “Certified Professional – Mobile Automation Agile Testing” certification prepared and honored by “Agile Testing Alliance” & “University Teknologi Malaysia (UTM)”.
CP-MMAT is the prerequisite for this next level of certification called CP-M-AAT. Alternatively you should be having at least 2 years of relevant experience in Testing and at least one year in an Agile project.
The course is applicable for all roles and not just “testers”. Knowledge, experience & certification is consciously designed to focus on “agile testing” and not on “agile testers”.
How is it useful?
CP-M-AAT prepares you for utilizing mobile test automation tools effectively in an agile project. It helps you realize the tester’s role in planning and strategizing for android mobile Test Automation in an agile project. It gives you insight into the cost-benefit analysis, the opportunities and risks and the Agile team approaches to let the testfirst strategy drive the quality goals of the projects. The course covers BDD and mobile test automation in a hands-on fashion using pairing techniques of XP. It also covers the real-life challenges that a tester would face while applying the strategies. All the concepts are driven using the case studies and actual test automation tasks involved in any live agile projects and actual mobile devices (not simulators). The course introduces you to the mobile test automation tool Appium.
Am I eligible?
Anyone having more than 2 years of experience in agile or testing is eligible for CP-M-AAT. If you have already done CP-MMAT then you automatically qualify for this course provided you have 1 year of experience.
Duration
CP-M-AAT is designed specifically for corporates and working professionals alike. If you are a corporation you can opt for either 5 half days course or 3 days course followed by an examination. If you are a working professional opt for 3 days course followed by an examination.
Training Agenda
-
Recap from CP-M-MAT
Agile Manifesto
Agile Principles
Agile in Practice
Agile Mindset
Scrum – Testing in iterations
Mobile Testing challenges in Agile
Test Automation
-
Need for Mobile Test Automation
Challenges in Test Automation
How Agile Testing approach can help in Mobile Test Automation
Automation Strategy
Cost-Benefits Analysis
Preparation for Automation
Opportunities and Risks
Test Automation Frameworks
Tools evaluation and Pilot
Agile Teams
Cross-functional Testers and Whole Team Approach
Independent/Specialist Testing Group
Definition of Done
Test Hardening
Test-First approach
BDD
ATDD
TDD
Behavior and Requirements
Behavior of the System
Test Case specification
User Stories and Scenarios
User Stories
Attributes of good user stories
How to write user stories
Is every task a user story?
Who writes them?
Group Exercise
Create features for the given Requirements and User Stories
Attributes of a Good feature document
-
Introduction to Cucumber
Foundation
Behavior in Feature document
Step definition
Human Language Support
Cucumber for Java – Cucumber JVM
Testing Possibilities
Getting BDD wrong
Installation and configuration for Cucumber
Installing Eclipse
Creating Maven project
Maven dependencies
Manual setup (non-maven) – required libraries
Implementing BDD using Cucumber
Preparing Features File having test scenarios
Writing a step definition
Writing Runner Class
Given, When, Then, And, But annotations and usage in features class
Passing parameters in Step Functions
Using regular expression in steps
Test-first concept in Cucumber
JUnit Test generation in Cucumber
Pretty, Tags and Glue
Cucumber HTML Reports
Using Assertions to report failure
Running simple feature/Step scenario
Building a simple test case
Running all/limited tests
Agile Practical - Sprint 1
Cucumber in action
Features and Steps definition for Requirements
Running the Requirements as Test
Retrospective
-
Introduction to Appium
Foundation
What is Appium?
Appium history and relation to Selenium
WebDriver JSON protocol
App types – Native, Web and Hybrid Apps
Testing Possibilities
Android API levels and versions
Drawback and limitations
Installation and configuration for Appium
Installing Java, configuring JAVA_HOME
Installing Android SDK and configuring ANDROID_HOME
How to use adb and its limitations
Installing PDANet
Android Security and RSA keys
Installing Node.js
Installing MS Dot Net framework
How to use android simulators and its drawbacks
Configuring mobile devices for APK testing
USB Debugging
Appium basics
Launching Appium server from command line and GUI
What are desired capabilities settings?
What is APK file
How to get APK file for any android App
What is appPackage and appActivity? How to find it for the App?
How to test an app without having access to APK file?
No-reset and Full Reset mode in Appium
How to test android system apps in Android
Configuring Appium in Eclipse
Eclipse Installation
Eclipse setup for Android development with ADT and AVD manager
Eclipse configuration for Appium Tests
Maven dependencies and jar files required
Using Assertions to report failure
Running simple scenario
Building a simple test case
Running all/limited tests
Agile Practical - Sprint 1
Appium in action
Retrospective
-
Locator Strategies in Appium
Foundation
UI Automator
Android App layouts
WebDriver and UI Automator locators
Object Locator tools
UISelector in UI Automator
XPath locators and its limitations
XML Viewer
Touch Actions
Touch event
Drag and drop
Multi-touch actions
Longpress, Pinching, expanding actions
Agile Practical - Sprint 2
Appium in action
Retrospective
-
Web Application Testing
Launching browsers
Desired capabilities for browsers
Giving browser commands
Setting useragents
Integrating Appium with Cucumber
Setting up Appium reference libraries in Eclipse
Running Tests for mobile browsers and apps
Test reporting
Agile Practical - Sprint 3
Appium in action
Retrospective
-
Appium advanced topics
Basis
Testing the lower Android API versions
Introduction to Selendroid
Running Appium in Selendroid mode
Running Selendroid Tests
Using Appium and Selendroid effectively
Integrating Appium with Jenkins for CI
Using ANT and Maven
Configuring Jenkins
Handling navigation drawer
Building test automation frameworks and reporting
Parameterizing the tests
Uploading and downloading files
Customizing the reports
-
Practical Agile Testing
Case Study