Chapter 1: Testing Fundamentals
- What Is Testing?
- Why Is Testing Necessary?
- Testing Contributions To Success- Quality Assurance And Testing- Errors, Defects, And Failures- Defects, Root Causes And Effects
- Seven Testing Principles
- Test Process
- Test Process In Context- Test Activities And Tasks- Test Work Products- Traceability Between The Test Basis And Test Work Products- Tester’s And Developer’s Mindsets- Defect Life Cycle
Chapter 2: Testing Throughout the Software Development Lifecycle
- Software/System Development Life Cycle (SDLC)
- Waterfall Life Cycle
- Agile Life Cycle
- V-Model of Testing and Software Testing Life Cycle (STLC)
- Software Testing Categories
- Categories of Test Techniques
- Black-Box Test Techniques
- - Equivalence Partitioning- Boundary Value Analysis- Use Case Testing
- White-Box Test Techniques
- Experience-Based Test Techniques
- - Error Guessing- Checklist-Based Testing
Chapter 3: Test Management: Test Plane and Test Case Development
- Test Plan: Purpose and Content of a Test Plan
- Entry Criteria and Exit Criteria
- Test Case Design
- Test Scenario
- Test Case Specifications
- Bug Tracking Software Basic
Chapter 4: Java
- Java Basic
- What is package concept in java
- Variables and assigning variables in java
- Object, Creating an object in java
- Java access Modifiers
- Java Methods
- Java Encapsulation
- Java Constructor/Destructor
- How TestNG makes Selenium tests easierd
Chapter 5: Selenium
- Introduction to Selenium WebDriver
- Guide to install Selenium WebDriver and its necessary Environment
- Creating your First Script in Webdriver
- Cross Browser Testing using Selenium
- Why Version control system is important in managing code and learn basic git commands to manage codes.
- Sessions, Parallel run and Dependency in Selenium
- Apache Maven details and building Java Projects with Maven
- TestNG framework for test automation
- How TestNG makes Selenium tests easier
- All about TestNG annotations and test management using TestNG
- TestNG Data Provider
- Data driven testing using Apache POI
- All About Excel in Selenium: POI & JXL
- Test Case Priority in TestNG
- TestNG: Execute multiple test suites
- Parameterization using XML and Data Providers: Selenium
- Page Object Model (POM) & Data driven testing
- PDF , Emails and Screenshot of Test Reports in Selenium
- Listeners and their use in Selenium WebDriver
- Handling Date Time Picker using Selenium
- Database Testing using Selenium
- Handling Cookies in Selenium WebDriver
- Alert & Popup handling in Selenium
Chapter 6: BDD
- Cucumber
- Gherkin
Chapter 7: APP Automation (Appium)
Automation Testing Introduction, Environment Setup and Tools
- Introduction to Testing
- Introduction to Automation Testing
- Types of Automation Tools
- Functionality Testing Tools
- Performance Testing Tools
- Test Management Tools
Introduction to Appium & Mobile automation Testing
- Introduction to Mobile automation testing
- Selenium 3.0 and APIs
- Automation for IOS and Android devices
- Running the scripts on Emulators
- Running the scripts on Real devices
- Various tools available for Mobile automation testing
- Understanding the API Levels and Appium Concepts
- Client/Server Architecture, Session, Desired Capabilities, Appium Server and Appium Clients
Installing JDK, Maven and Android SDK
- Pre-requisite for starting with Appium
- Supported Java versions
- Configuring environment variables
- Downloading and Installing JDK
- Downloading Android SDK
- Taking a look at available Android Virtual Devices
Downloading Appium Dependencies
- Understanding Desired capabilities class
- Extracting Packages and Activities information of pre and post installed apps
- Downloading Appium Maven Dependencies
- Adding Device Name
- Connecting real device to USB and running ADB commands
UI Automator Viewer
- Opening Automator Viewer through SDK tools kit
- Understanding different locator strategies
- Taking the Device screenshot
- Device screenshot with Compressed hierarchy
- Understanding the different locator tags
Object Locators and Techniques
- Locating Elements on the App
- What all can be locatable
- Locating elements within elements
- Locating multiple elements
- Find Element By Android UIAutomator
- Exploring UIAutomator API
- Finding Elements by ClassName
- Finding Elements by ids
- Finding Elements by Xpaths
- Using different functions inside UIAutomator class
- Exercises
Basic installation for Appium on Windows
- Visiting Appium.exe
- Downloading Appium for Windows
- Downloading Appium jars and other dependencies
- Configuring SDK Manager
- Downloading different Android API levels
- Setting up Android environment variables
- Downloading Appium GUI Tool
- Understanding Application path, Package & Launch Activity
- Starting Appium Server
- Running a sample test to make sure everything works fine
Starting the Appium server programmatically Windows OS
- Starting the Appium server through code / programmatically on Windows
- Downloading Appium Maven Dependencies
- Stopping the Appium server
- Kill all nodes
Appium Inspector
- What is Appium Inspector?
- How and when to run it?
- Record and Play using Appium Inspector
- Locating elements with the help of Appium Inspector
- Inspector will only run with active session
Testing Android Native, Hybrid & Web Apps on Windows
- Native App Test – Making a call with Internal Dialer Application
- Native App Test – Adding a new contact to Phonebook
- Native App Test – Sending SMS from a real device
- Native App Test – Automating a standard App
- TouchActions and Events – Handling user gestures
- WebApp Test – Automating Web based testing on Chrome Browser
- Hybrid App Test – Automating the mobile messaging app
Chapter 8: API Automation
- Postman
- Rest Assured
Chapter 10: End-to-End Load test using Jmeter
- Plugin setup
- Report analysis
- Load Test Algorithm
- Real Load Test Case Scenario & Scripting
- Post BeanShell & Pre Beanshell scripting
Chapter 9: Database Testing
- SQL Query
Chapter 11: End-to-End automation framework & CI/CD
- Design web, app & api automation in same architecture
- Git setup & Uses
- For CI/CD-- gitAction