Configure Your Custom Team Training by Selecting the Right Combination of Modules Based on Your Knowledge and Goals, if You Are Not Sure We Can Help You to Define the Right Modules.
Automate the Planet Instructors' Training Modules
Level 1
Testing Fundamentals
Fundamentals of testing
- Why is testing necessary?
- What is testing?
- Testing principles
- Fundamental test process
- The psychology of testing
Testing throughout the software life cycle
- Software development models
- Test levels
- Test types: the targets of testing
- Maintenance testing
Static techniques
- Reviews and the test process
- Review process
- Static analysis by tools
- Test design techniques
Identifying test conditions and designing test cases
- Categories of test design techniques
- Specification-based or black-box techniques
- Structure-based or white-box techniques
- Experience-based techniques
- Choosing a test technique
Test management
- Test organization
- Test plans, estimates, and strategies
- Test progress monitoring and control
- Configuration management
- Risk and testing
- Incident management
Tool support for testing
- Types of test tool
- Effective use of tools: Potential benefits and risks
- Introducing a tool into an organization
C# Level 1
- C# Intro
- Primitive Data Types and Variables
- Operators and Expressions
- Conditional Statements
- Loops
- Arrays
- Methods
- Using Classes and Objects
- Collections
SQL Level 1
- DB Introduction
- Data Types
- CRUD Operations
- Built-in Functions
- Table Relations
Source Control Introduction
- What is Git?
- How does Git work?
- Git Key Concepts
- What is GitHub?
- What is TFS GIT?
C# Unit Testing Fundamentals
- Running Unit Tests
- Naming Conventions
- Debugging unit tests
- Grouping Unit Tests
- Playlists
- Code Coverage
- Attributes and Hooks
- Testing exceptions
- Generating tests
- Running Tests from command line
- Using a Configuration file to define a data source
- Different Unit Test Assertions- CollectionAssert, Assert class, etc.
- Choose test runners- Compare different- MSTest, NUnit, xUnit.net
- Testing Frameworks- MSTest, NUnit, xUnit.NET
- Test Data Creational Libraries
- Unit Testing Assertion Libraries
- Mocking and Stubbing Libraries
Selenium WebDriver- Getting Started
- Understanding Selenium
- Automating Browser Navigation Actions
- Windows, Frames and Alerts
- WebDrivers for Different Browsers
- Capturing Screenshots
- Executing JavaScript
- Building Maintainable Scripts using the Page Object Model
- Locating Elements in a WebPage
- Learn how to use Selenium WebDriver explicit and implicit waits
- Learn the problems that can occur as a result of improper synchronization
Appium- Getting Started
- Understanding Appium
- Automating Mobile Basic Actions
- Handling Mobile Emulators and Real Devices
- Automation Mobile Web
- Building Maintainable Scripts using the Page Object Model
- Locating Elements in a Native Apps
- Working with most common mobile element controls
- Learn how to use Appium explicit and implicit waits
- Learn the problems that can occur as a result of improper synchronization
Behavior-Driven Development- SpecFlow
- What is SpecFlow?
- Getting started examples
- Use data driven testing generation
- Pass dynamic tables to tests
- SpecFlow hooks explained
- Compare different Specflow bindings
Level 2
High-Quality Code
- Course Overview. Introduction to High-Quality Programming Code
- Fundamentals of Software Engineering
- Naming Identifiers in the Source Code. Naming Classes, Methods, Variables, Parameters and Other Elements of the Code
- Designing High-Quality Classes and Class Hierarchies. Best Practices in the Object-Oriented Design
- High-Quality Methods. Strong Cohesion and Loose Coupling
- Using Variables, Data, Expressions and Constants Correctly
- Using Control Structures, Conditional Statements and Loops Correctly
- Correctly Formatting the Code. Code Documentation, Comments and Self-Documenting Code. Code Conventions
- Code Integration. Refactoring Existing Code to Improve Its Quality
C# Level 2
- Generics Classes
- Generic Methods
- Generic Constraints
- Delegates
- Anonymous Functions
- Standard .NET Libraries
- Reflection API
- New Language Features
SQL Level 2
- Data Aggregation
- Sub-queries and Joins
- Triggers and transactions
Test Reporting Solutions and Frameworks
- What is Test Reporting Solution?
- Native Test Frameworks Reporting Solutions
- Allure Integration
- Test Report Portal Integration
- Azure DevOps Integration
Selenium WebDriver- Advanced
- Working with tabs and windows
- Working with cookies
- Working with browser profiles
- Start browser with predefined extensions
- How to wait for visibility of an element
- How to perform drag and drop
- How to perform a click and hold
- How to perform a double click
Setup Continuous Integration Job
- What stands for Continues Integration (CI)?
- How to schedule my tests to run after every commit in my source code repository?
- How to setup CI with TFS? Practical realization of CI with TFS.
- Visualize Test Results
Executing Automation Tests in Parallel and in the Cloud
- How to run tests in parallel on your computer
- How to run tests in parallel using Browser Stack
- How to run tests in parallel using Sauce Labs
- How to run tests in parallel using Jenkins Slaves
- How to use WebDriver tests to create load tests
Level 3
Design Patterns in Automated Testing
Learn basic skills and concepts of Software Testing. Lessons are taught using REAL-LIFE Examples for improved learning. Refer the tutorials sequentially one after the other.
- What are Design Patterns?
- Creational Design Patterns
- Structural Design Patterns
- Behavioural Design Patterns
- SOLID and Other Principles
BELLATRIX Framework
- Installation and Configuration
- Using Common Services
- Locating Elements
- Waiting for Elements
- Troubleshooting Features
- Handling Environment Configurations
- Page Objects
- Load Testing
- Test Writing Acceleration Features
- Test Report Portals Integrations
- Framework Extensibility
- Mobile Testing Specifics
- Desktop Testing Specifics
- API Testing Specifics
Build Custom Test Automation Framework C#
- Building Projects Structure
- Defining Common Services
- Building Locating and Waiting for Elements Services
- Screenshots and Videos on Test Failures
- Handling Environment Configurations
- Page Objects
- Test Writing Acceleration Features
- Test Report Portals Integrations
- Framework Extensibility
- BDD- SpecFlow Integration
- Mobile Testing Specifics
- Desktop Testing Specifics
- API Testing Specifics
Nonfunctional
Performance Testing
- Fundamentals of Performance Testing
- Key Factors and Reference Technologies for Performance Testing
- Fundamentals of Web Technologies
- Web Debugging with Chrome DevTools, Postman, and Fiddler
- Performance Testing with WebPageTest
- Introduction to Jmeter
- Creating and Executing Jmeter Tests
- Test Definition, Design, and Plan in Performance Testing
- Setup of Test Environment
- CI Integration of Performance and Load Testing
- Test Execution and Results Analysis
- Monitoring and Control
Instructors Team
Anton Angelov
Anton Angelov is Managing Director, Co-Founder, and Chief Test Automation Architect at Automate The Planet — a boutique consulting firm specializing in AI-augmented test automation strategy, implementation, and enablement. He is the creator of BELLATRIX, a cross-platform framework for web, mobile, desktop, and API testing, and the author of 8 bestselling books on test automation. A speaker at 60+ international conferences and researcher in AI-driven testing and LLM-based automation, he has been recognized as QA of the Decade and Webit Changemaker 2025.
Nikolay Avramov
Nikolay Avramov is Technical Director and Co-Owner at Automate The Planet, where he leads test automation, performance engineering, and security testing engagements. With over 8 years of experience building enterprise-wide testing strategies and custom automation frameworks, he helps organizations establish robust, scalable testing practices. He regularly speaks at international testing conferences and conducts specialized technical training programs for engineering teams.
Let's Work Together to Create Something Amazing
Book a Meeting
Pick a Date That Works for You to See Available Times to Meet Our Sales and Technical Representatives.
Call Us
USA: +1 509 643 4300
Bulgaria: +359 879 602 514