Online Ultimate Mobile Test Automation Bootcamp

Stress free trial - 100% refund of full payment after first session if you are not satisfied

Reinvent Your Career in 11 weeks

This training is for manual testers who want:

  • make a shift in their career and become Software Development Engineer in Test
  • make higher compensation
  • feel more confident in current market

Why we are different?

  • We are not typical bootcamp. We teach through day-to-day work tasks using Agile approach. From day one you will start automating real use cases of a real startup-like Android app. Thus you will gain real experience.
  • You will learn programming via hands-on task completion -- focusing you on topics that are necessary to complete your task
  • You will work in pair just like at real-world job. Pair programming is proven to be very effective and used heavily industry wide.
  • If you get stuck, we will unblock you during 1:1 office hours
  • You will experience best software development practices:
    • Each test case code will be committed to common GitHub repository via Pull Request. We will teach everything about Git and GitHub from scratch
    • Upon successful code review and merge, your test code will be executed on Jenkins — your work will be run along with existing tests thus will be checked if your newly automated test is not breaking existing tests. This practice is called pre-merged testing and in recent years has become industry standard
  • We will start each session with methodical approach on how to solve most asked Interview Programming problems thus will prepare you for coding interview screening

What framework/library we will use for test automation?

Since we are going to focus on Android Native App automation, we will use Espresso which is part of Android SDK

Course outline:

  • First week we help you to dive into Kotlin ( Google's adapted programming language for Android development)  basics of Object Oriented programming, so later you may focus on tasks rather than programming basics
  • Second week we will build simple Android app, so you would be familiar with Android development process and terminology
  • Intro to Git and GitHub. Creating Pull Request and solving merge conflicts
  • Every other online session will be started with Coding Algorithms
  • Setup test project from scratch in Android Studio
  • Intro to Gradle setup for Espersso and tasks
  • Learn basic to advance features of JUnit 4
  • As we progress, we will refactor tests with industry best practices to make tests more resilient using Page Objects pattern
  • Intro to Test Pyramid and RestApi testing. Automating backend tests in Kotlin
  • Make tests more stable with stubs using MockWebServer - OKHTTP library(every company wants this skill nowadays)
  • Decorate tests with  advance features such as Intent stubbing and Idling resources
  • Parallel testing with Fork
  • Setup  Android Continuous Integration with Jenkins and Fabric
  • Scale device coverage with cloud device farm - Headspin
  • Simulate coding interviews, prepare resume and LinkedIn
  • Full session on a new career strategy -- how to setup personal goals and achieve them

Detailed Course Syllabus

Week 1

Intro to Kotlin and Android Studio
  • Variables
  • Datatypes
  • Operators
  • Control blocks
  • Collections
  • Functions
  • Classes and Objects
Intro to Interview Algorithms (Java)  

Week 2

Git and GitFlow
  • Intro to Git
  • Go over basic Git commands in Terminal
  • GitHub and Pull Request
 

Week 3

Intro to Android Development
  • All about Layout
  • Activities Lifecycle:  
  • Activity
  • Activity Lifecyle
  • Intro to Serialization and Intents
  • Event listeners
  • Build first Android app

Week 4

  • Intro to “OrderMe” -- Android App under test
  • Go over "OrderMe" code and architecture
  • Gradle and Android Testing Library
  • Build types and product flavors
  • Intro to basics of Espresso Library: View Matchers, View Actions,  View Assertion
  • First Espresso tests for "OrderMe" with Test Recording and refactoring
  • Setup run configuration for Espresso
  • Into to  Page Objects architecture
  • Refactor existing test with Page Objects
  • Solve interview Algorithm

Week 5

  • Make Page Object more resilient
  • Solve one interview Algorithm
  • Custom Matchers

Week 6

  • Intro Data Race and Atomic Reference
  • Custom Action
  • Failure Handlers
  • Solve interview Algorithm

Week 7

Recycle Views:
  • Refresh overview of Recycle View
  • interaction with elements outside the screen
+++++++++++++++++++++++++++++++++
  • External Intents
  • Internal Intents
  In-classroom sessions:
  • Sat: Gradle/Fork and Jenkins
  • Sun:  Fabric and Whiteboard algorithms

Week 8  

Prerequisites for Idling Resources:
  • Intro to HTTP anatomy
  • Go over architecture of  OrderMe Network layer
  • Intro to RXJava

Week 9

  • Multithreading
  • Async calls
  • Implementation for Idling Resource
  • Example of Custom JUnit runner
  • RXIdler in-action

Week 10

  • Lab: Work with instructors  to refactor existing tests with Idling Resource
  • Intro to Dependency Injection  with Dagger 2

Week 11

  • Intro to Mock HTTP Web Server
  • LAB: refactor existing tests with stubbing network layer
  • Interview Algorithms in depth
  • Resume and Interview Preparation
 

Resume skills upon completion:

  • Intermediate Kotlin skills
  • Espresso
  • Gradle
  • Android SDK configuration
  • Fundamental knowledge for Android development
  • Scaling test execution with Fork
  • Rest API — HTTP, JSON parsing
  • Stubbing with MockWebServer
  • Dependency Injection with Dagger 2
  • Jenkins CI setup
  • Git flow with GitHub

What test automation framework and programming language are we going to use?

  • Espresso – testing framework which is part of Android SDK
  • Kotlin – officially adapted by Google Android team Object Oriented programming language
  • Gradle – manages third party Libraries for Android
Prerequisites:
Must Have
  • You must have MacBook Pro or Ubuntu  for this bootcamp with minimum 2.5GHz Processor and 16GB of RAM
  • Fundamental knowledge of basic Object Oriented concepts in any programming language or have at least 6 months of practical experience in manual testing

Please register ASAP since seating is limited to 20 students only!

* Registration refund policy:
Stress free trial - 100% refund of full payment after first session if you are not satisfied We do not refund tuition after 3rd session attendance

Please register ASAP since seating is limited to 20 seats!

For bootcamp pricing and details

DateTime
January 12Saturday1:00 PM - 5:00 PM
January 13Sunday1:00 PM - 5:00 PM
January 17Thursday7:30 PM - 9:30 PM
January 22Tuesday7:30 PM - 9:30 PM
January 24Thursday7:30 PM - 9:30 PM
January 28Monday7:30 PM - 9:30 PM
January 31Thursday7:30 PM - 9:30 PM
February 4Monday7:30 PM - 9:30 PM
February 7Thursday7:30 PM - 9:30 PM
February 11Monday7:30 PM - 9:30 PM
February 14Thursday7:30 PM - 9:30 PM
February 18Monday7:30 PM - 9:30 PM
February 21Thursday7:30 PM - 9:30 PM
February 23Saturday1:00 PM - 5:00 PM
February 24Sunday1:00 PM - 5:00 PM
February 28Thursday7:30 PM - 9:30 PM
March 4Monday7:30 PM - 9:30 PM
March 7Thursday7:30 PM - 9:30 PM
March 11Monday7:30 PM - 9:30 PM
March 14Thursday7:30 PM - 9:30 PM
March 18Monday7:30 PM - 9:30 PM
March 21Thursday7:30 PM - 9:30 PM
March 25Monday7:30 PM - 9:30 PM
March 28Thursday7:30 PM - 9:30 PM