The 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 9 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 iOS app. Thus you will gain real experience.
  • You will learn programming via hands-on task completion -- focusing you on programming 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.
  • You will experience best software development practices during Bootcamp:
    1. Each test case code will be committed to common GitHub repository via PullRequest. We will teach everything about Git and GitHub from scratch at first week of the bootcamp
    2. Upon successful code review by instructor and your team mates, your newly written test(s) code will be validated on Jenkins CI:
      • all tests must pass, including your new ones
      • SwiftLint must pass -- Swift style and conventions
    3. Above practices are harsh but would give you a real taste of day-to-day SDET live
  • We will start every other 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 iOS, we will use XCUITest which is part of native XCode SDK

Course outline:

  • First week we help you to dive into Swift basics of Object Oriented programming, so later you may focus on tasks rather than programming basics
  • 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 XCode
  • Integrate Accessibility Identifiers in app code for testability
  • Improve test stability by cleaning up application data via AppDelegate
  • As we progress, we will refactor tests with industry best practices to make tests more resilient using Page Objects pattern by using Protocols, Extensions, Delegates, ENums and Generics
  • Intro to Test Pyramid and RestApi testing
  • Make tests more stable with mock sever using https://github.com/envoy/Ambassador (every company wants this skill nowadays)
  • Automating App Analytics ( number one desired test coverage by company's executives)
  • Decorate tests with  advance features of XCUITest Library such as Async Wait, First Match API, Activities, Attachments and Screenshots
  • Setup  iOS Continuous Integration with Jenkins using Xcodebuild and Fastlane
  • Running tests in parallel in XCode 10
  • Scale device coverage with cloud device farm - Headspin
  • Simulate coding interviews, prepare resume and LinkedIn
  • 1:1 individual session on a new career strategy -- how to setup personal goals and achieve them

Detailed Course Syllabus

Week 1

Intro to Swift and XCode
  • Variables
  • Datatypes
  • Operators
  • Control blocks
  • Collections
  • Functions
  • Optionals
  • Classes and Objects
  • Initializers
Intro to Interview Algorithms (Swift)

Week 2

Git and GitFlow
  • Intro to Git
  • Go over basic Git commands in Terminal
  • GitHub and Pull Request
Intro to XCUITest library 
  • solve interview algorithm - find number of unique character in string
  • create UiTesting target
  • automate first user scenario
  • refactor first test

Week 3

Intro to scalable Architecture with Page Objects
  • refactor first test with PageObjects
  • access control and encapsulation
  • polymorphism in action
  • initializers in actions
  • intro to XCode debugging
  • Optionals in action

Week 4

Scale tests with Date Object, Protocols and Protocols extensions 
  • harden tests with future dates -- how to manipulate Date object
  • improve app navigation with Protocols
  • type alias and tuples

Week 5

Facebook auth with WebViews and clean up/injecting tests data
  • automate Facebook auth by using WebViews
  • clean tests data in appdelegate
  • logout before every test
  • using Activity in context for more readable test logs

Week 5 Weekend Lab

Build CI with Jenkins 
  • Install and configure Jenkins Server
  • using xcodebuild for building and running XCUITests for command line
  • using bash script to wrap up xcodebuild commands
  • configure Test Job in Jenkins that runs full regression upon Git commit

Week 6

Intro to backend Rest API and Mocking HTTP Traffic 
  • testing RestAPI via Charles Proxy
  • intro to Postman - Api development and testing environment
  • intro to Ambassador -- a light weight HTTP mock server
  • refactor existing tests by pointing them to network mocks

Week 7

Completion Hanglers  andAnalytics automation 
  • intro to completion handlers
  • automating client analytics with Ambassador HTTP mock server
 

Resume skills upon completion:

  • Intermediate Swift knowledge
  • Automate iOS App  regression with XCTest and XCUITest Library
  • Scalable test architecture -- PageObjects on steroids
  • Make test CI stable with mocking networking responses
  • Rest API testing — HTTP, JSON
  • Jenkins CI: Build, Test, Deploy
  • Parallel test execution
  • Devices Cloud -- leverage global coverage

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

  • XCUITest – testing framework which is part of XCode
  • Swift 4 – widely used Object Oriented programming language from Apple (open source)
  • CocoaPods – manages third party Libraries for iOS
  • Ambassador - Swift framework designed for UI automatic testing API mocking
  • Fastlane - is a tool for iOS developers to automate tedious tasks like generating screenshots, dealing with provisioning profiles, and releasing your application
  • Jenkins - Continuous integration server
Prerequisites:
Must Have
  • Must haveAndroid phone with OS > 5.0 and Mac with minimum hardware requirements :  CPU: 2Ghz+, Intel i5+, RAM: 8Gb+
  • Must have minimum of 6 months experience as manual tester. Mobile or Web
  • You must have existing knowledge about Object Oriented Programming

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 online session

Please register ASAP since seating is limited to 20 seats!

For bootcamp pricing and details

DateTime
April 13Saturday1:00 PM - 5:00 PM
April 14Sunday1:00 PM - 5:00 PM
April 18Thursday7:30 PM - 9:00 PM
April 22Monday7:30 PM - 9:00 PM
April 25Thursday7:30 PM - 9:00 PM
April 29Monday7:30 PM - 9:00 PM
May 2Thursday7:30 PM - 9:00 PM
May 6Monday7:30 PM - 9:00 PM
May 9Thursday7:30 PM - 9:00 PM
May 11Saturday1:00 PM - 5:00 PM
May 12Sunday1:00 PM - 5:00 PM
May 16Thursday7:30 PM - 9:00 PM
May 20Monday7:30 PM - 9:00 PM
May 23Thursday7:30 PM - 9:00 PM
May 30Thursday7:30 PM - 9:00 PM
June 3Monday7:30 PM - 9:00 PM
June 6Thursday7:30 PM - 9:00 PM
June 10Monday7:30 PM - 9:00 PM
June 13Thursday7:30 PM - 9:00 PM