Free Demo Session On:
16th June @ 8:30 PM – 9:30 PM (IST) (Indian Timings)/
16th June @ 11 AM – 12 PM (EST) (U.S Timings)/
16th June @ 4 PM – 5 PM (BST) (U.K Timings)
Class Schedule:
For Participants in India: Monday to Friday 8:30 PM – 9:30 PM (IST)
For Participants in the US: Monday to Friday 11 AM – 12 PM (EST)
For Participants in the UK: Monday to Friday 4 PM – 5 PM (BST)
Salient Features:
- 25+ Hours of Live Training along with recorded videos
- Additional video recordings related to PT/PE(Total 12+Hours) – Linux for Performance, Selenium Automation for Performance, Live performance testing project.
- Additional Video recordings related to programming language(30+Hours) – Java & Python
- Course Completion Certificate
Course syllabus:
Section 1: Introduction to Performance engineering(PE)
- Skill set required to be a successful performance engineer
- Where do we lag as a performance tester when it comes to PE
- Various engineering activities & tools across SDLC
- What is expected from a Performance engineer during the interview as well as during the project execution.
Section 2: Think Like a Developer
- Java Performance Engineering/JVM Architecture
- Why Java &Get Your Basics
- JDK/JRE/JVM
- Get the understanding of JVM architecture (Memory management / Threads/Execution engine)
- Types of JVM and its performance impact.
- Think like a Developer to be a good performance engineer
- Get Hands On and start writing small programs
- Setting up Java Environment/Eclipse
- Practical understanding of JVM components with the new java project/programs
Section 3: Early Performance Engineering – CPU profiling & Response time analysis
- Troubleshooting High response time issues
- How to use Jprofiler to identify bottlenecks
- Practical examples with real time application to create issues and identify the bottleneck at class/methods
Section 4 : Early Performance Engineering – Client Side Performance Analysis
- Why client / browser side performance
- What are the common client side performance issues
- Tools and methodology to analyse the performance issues
- Automating the client side performance
- Browser APIs to collect client side statistics
- How to provide Recommendations
- Practical examples with real time applications to understand the issues/ provide recommendations with the fixes
Section 5 : Early Performance Engineering – Memory Profiling and Leak Analysis
- Identifying Memory Pattern and troubleshooting High response time issues
- How to use Jprofiler to identify Memory Leaks
- Practical examples with real time application to create issues and identify the bottleneck at class/methods.Objects
Section 6 : Java Memory Management Part 1
- Deep dive into Memory allocations
- How memory works Stack & Heap
- Role Of Metaspace
- Tuning the Java Memory Settings
- How and when to take the heap dump
- Role of Endurance tests in memory lead identification
- Heap dump analysis and finding the possible root cause of the memory issues
Section 7: Java Memory Management Part 2 – Garbage Collection
- Introduction to GC concepts and how JVM manages memory via GC
- JVM GC collectors Serial/Parallel/CMS/G1
- Tuning GC components
- Old/young generations, survivor space
- Practical examples & code walkthrough to show the memory issues/ how GC works.
- GC Log analysis to monitor GC Pause time & frequency of Minor & Major GC
Section 8 : Thread Analysis – Contention & Locks
- Introduction to Java Threads
- How Java threads are handled by JVM
- Thread status and how to analyse the health of the thread during the load test execution
- How and when to take Thread Dumps
- Tools(jvisual vm/jprofiler)/Command line functions & step by step process to take the thread dump
- How to analyse the Thread Dump and identify the bottlenecks
- Practical examples with real time application & code to create thread issues and conduct thread dump analysis
- Fixing the code post recommendation and to observe the impact
- Thread configuration in server and its impact on the performance
Section 9 : Monitoring Strategy before/during/after Load Test execution
- Architecture overview as part of monitoring strategy
- Setting up the right monitors to collect metrics
- Various tools and methodology to monitor and collect performance metrics during load test
- Detailed overview on Linux monitoring(Pre-recorded videos)
- Walkthrough on important performance counters
- Practical session on Infra monitoring using Telegraf & Grafana
- Overview on Network Monitoring utilities to understand the network related bottleneck with practical examples
- Appdynamics – Detailed walkthrough of setting up appdynamics agent, Monitoring , Diagnostics, Alerts/Events, GC Analysis , Heap dump, Heap and thread monitoring
- Dynatrace – OneAgent configuration with web application. Monitoring & Diagnostics – Response time analysis , Heap / Thread / Garbage collection.
Section 10: Database Performance
- Oracle Process Architecture
- Oracle Memory architecture
- Database Monitoring
- Automatic Workload Repository(AWR)
- How and when to take AWR reports for performance analysis
- Importance of Parsing and Buffer cache
Section 11 : Production Monitoring and Analysis (Pre-Recorded Video )
- Synthetic monitoring & Real User Monitoring
- Walk through of various techniques/tools available for synthetic monitoring
- Deep dive into Synthetic Monitoring – Dynatrace (Script creation, configuration, execution and monitoring)
Section 12 : Nonfunctional requirements and engineering strategy
- Workload definition – Performance engineering strategy
- Creating engineering plan/strategy
- Performance Engineering in Agile delivery model – What to execute in sprint/Release cycles
Section 13 : Continuous/Automated Performance testing in Devops(Pre-Recorded Video)
- Discussion on Myths/Practical challenges/Best practices or Performance testing in CT pipeline.
- Jmeter – Jenkins integration for automated jmeter test execution
- Various Continuous testing pipelines
Section 14 : Introduction to Cloud & Resiliency engineering with Chaos testing
- Introduction to AWS & Azure Cloud monitoring tool
- What is Resiliency engineering & why it is required
- Various failure scenarios – CPU burn/diskburn/server crashes
- Introduction to Chaos tools – AWS FIS , Gremlin, Litmus
Section 15: Performance analysis and profiling for Python & Machine Learning applications
- Performance bottlenecks – Python/Machine learning applications
- Python Profilers for code level/functional level root cause analysis
Section 16: DotNet performance analysis
- Performance Counters and tools available for monitoring/analysis of .Net application
- Introduction to DotTrace, DotMemory, Azure insights, visual studio for profiling
Section 17: Introduction to GenAI , LLMs and Usecases for Performance testing and engineering
- Introduction to GenAI and LLMs
- UseCases – Script Generation, Result analysis , Hotspot analysis.
Linux for Performance Testers (6+ hours Self-paced videos will be provided) – Satish Sir
- Load generators will be mostly linux – So I should know how to spin a new linux machine, install softwares(java) and tools(like jmeter).
- Transferring scripts , csv files, results between linux and windows machine.
- Application servers will be mostly linux – So i should know how to monitor linux servers to get OS level stats like cpu, threads, memory etc.
- There will be errors/exceptions which you need to look into/ analyze for which you should know how to monitor the logs, search for errors etc.
- When there are no commercial tools like appdynamics/dynatrace, you should be able to install open source tools like telegraf, influx and grafana.
- You should know how to install configure performance engineering tools like jprofiler,jconsole
- You should know how to take heap dumps and thread dumps for apps in linux.
Selenium for Performance Testers and Leads (5+ hours Self-paced videos will be provided) – Satish Sir
- Get the Basic Understanding
- T-Shaped Skillset – Why selenium automation for Performance testers and Lead
- Shift Left / Early Performance – Agile/Devops – How selenium helps
- Performance testing tool vs Automation tool – How it differs
- Selenium – How it works and Methodology
- Get the Basics Of Java – From Selenium Perspective
- JDK/JRE/JVM
- Setting up Environment variables
- Template Based Java Coding
- Imports & Build Path Configuration for External Jar files
- Software’s and tools
- Prerequisites & Required Softwares – Selenium Plugin , Eclipse, selenium jars, drivers, Dev tools
- Script Recording
- Selenium IDE – recording
- Locators in Selenium & Object Identification
- Dev tool Inspect element + Selenium IDE – To Pick
- Script Development
- Creating New project in eclipse
- Importing required jar files
- Template for selenium script
- Selenium IDE to eclipse project
- Script Enhancements
- javascript executor
- capture screenshot
- Error and exception handling
- Report Module Integration
- Execution
- From Eclipse
- Command line
- Runnable jar file
- Client Side Performance – Basics
- Developer tool Metrics
- Navigation API & Paint API
- Waterfall analysis / Har File Capture
- Selenium for Client side performance
- Response time calculation
- Navigation timing api integration
- Paint timing api integration
- Integration with Browser Mob proxy for Har file/ network traffic capture
- Selenium Integration with Loadrunner
- Eclipse plugin for Loadrunner
- Loadrunner Transaction markers in Eclipse scripts
- Generating the class file for Loadrunner
- Execution in eclipse and Loadrunner controller for Low volume tests
Live Performance Testing Project – (5+ hours Self-paced videos will be provided) – Satish Sir
- Collect Non functional Requirement
- Understanding of application architecture
- Prepare Performance test plan and sign off
- Develop Performance scripts using Loadrunner
- Design Performance test scenarios -Load/Stress/Scalability/Endurance
- Setup Monitoring – Open source monitoring(Telegraf//Influx) and appdynamics
- Execute Smoke testsand uncover test data/script/environment issues
- Configure JVM/Tomcat Heap/Threads/Log settings/remote monitoring
- Execute Planned performance test scenarios
- Monitor and Observe issues/errors/response time – Loadrunner
- Monitor Heap/Threads/GC and generate Heap dump / Thread Dump – Jconsole/appdynamics
- Analyze and prepare performance report
- Execution summaryand signoff
Python (30+ hours Self-paced videos will be provided) – Annapoorni Mam
- An Introduction to Python
- What can Python do?
- Why Python?
- Python Syntax compared to other programming languages
- Python and Anaconda Installation
- Data Types and Operations
- Prints and Comments
- Numbers, Strings, List
- Tuple, Dictionary
- String Operations in Python
- Simple Input & Output
- Simple Output Formatting
- Operators in python
- Python Program Flow
- Indentation
- The If statement and its’ related statement
- An example with if and it’s related statement
- The while loop
- The for loop
- The range statement
- Break &Continue
- Assert
- Examples for looping
- Functions& Modules
- Create your own functions
- Functions Parameters
- Variable Arguments
- Scope of a Function
- Function Documentations
- Lambda Functions & map
- Exercise with functions
- Create a Module
- Standard Modules
- Exceptions Handling
- Errors
- Exception handling with try
- handling Multiple Exceptions
- Writing your own Exception
- File Handling
- File handling Modes
- Reading Files
- Writing & Appending to Files
- Handling File Exceptions
- The with statement
- Classes in Python
- New Style Classes
- Creating Classes
- Instance Methods
- Inheritance
- Polymorphism
- Exception Classes & Custom Exceptions
- Generators and iterators
- Iterators
- Generators
- The Functions any and all
- With Statement
- Data Compression
- Data Structures
- List Comprehensions
- Nested List Comprehensions
- Dictionary Comprehensions
- Functions
- Default Parameters
- Variable Arguments
- Specialized Sorts
- Collections
- namedtuple()
- ChainMap
- Counter
- OrderedDict
- defaultdict
- UserDict
- UserList
- UserString
- Data Modification and Analysis with Pandas
- Defining Pandas
- Pandas – Creating and Manipulating Data
- How to Create Data Frames?
- Importance of Grouping and Sorting
- Plotting Data
- Selenium Python Basics
- Introduction to Selenium Webdriver
- Basic Navigation using selenium on website
- Automation tips
Core Java (32+ hours Self-paced videos will be provided) – Surya Sir
- Installation of jdk , setting up environment variables and eclipse
- Java – Classes/objects/methods/ packages
- Java programs for creating class/objects/packages
- Basics of Strings & arrays
- Java Programs with strings and arrays
- Single Thread Vs Multi Threading concepts
- Java – File handling and sample programs
- Installing mysql database and integration with java program
- Basics of html
- Basic of JSP
- Basics of Servlets
- Compilation and creating jar/war file
- Installation of Tomcat
- Deployment of Java application