Course details
Selenium Automation Testing Training in Pune
Overview: Selenium Automation Testing
Selenium Automation Testing empowers testers to create effective, scalable, and maintainable automated test suites for web applications. Its versatility, compatibility with various programming languages, and active community support make it a go-to choice for organizations striving for efficient and reliable software testing. As technology advances, Selenium continues to be a driving force in ensuring the quality and performance of web applications across diverse industries.
Key Componants:
At its core, Selenium comprises key components that empower testers to create efficient and scalable automated test suites. Selenium WebDriver enables seamless interaction with web elements, allowing testers to simulate user actions. Selenium Grid facilitates parallel execution, enhancing efficiency and reducing testing time. The Selenium IDE serves as a useful tool for recording and playing back browser interactions, streamlining the test creation process.
Call us for registration at +91 9552179558
Course Syllabus:
1. Pre-Selenium
2. Selenium
3. Post-Selenium
Pre-Selenium
- Setup Java environment – Download JDK and Setup eclipse
- Keywords and Syntax
- variables, operators, and control flows
- OOPs overview from Java context
- Conditions, Loops, Access and non-access modifiers
- Exception Handling, File and DB handling
- How to Install & set
- A Simple Java Program
- Compiling & executing Java Program
- Phases of Java Program
- Analysis of a Java Program
- Understanding Syntax and Semantic Error
- Runtime Exception
- Name of a Java Source File
- Platform Independency
- Java Technology (JDK, JRE, JVM, JIT)
- Features of Java
- Text Editors
- Consoles
- Naming convention of Java language
- Comments
- Statements
- Blocks (Static, Non-static/instance)
- Identifiers
- Keywords
- Literals
- Primitive Data Types, Range
- Reference (User defined) Data type
- Variables (Primitive, Reference)
- Type Casting, Default Value
- Operators
- Program/Interview questions
- Control Structures
- Java program inputs from Keyboard
- Methods of Keyboard inputs
- Scanner, Buffered Reader
- Problem Solving
- Java Array
- What is Array
- Array Declaration in java vs C and C++.
- Instantiation of an Array
- String vs character array.Accessing Array
- Elements, Default Value, for-each loop, varargs
- Length of an Array (What is –Array Index Out Of Bounds Exception)
- Increasing, Decreasing the Size and Copy of an Array
- Multi-Dimensional Arrays
- Application Compilation and Run
- Procedural Vs Object Oriented Program
- Different type of Program Procedural Vs Object
- Top Down Vs Bottom Up Approach
- Introduction to Object Oriented
- Abstraction, Encapsulation, Inheritance,
- Introduction to Classes and Objects
- Custom Class Definition
- Instance and Static Variables
- Different ways to create Object Instance
- Instance Variable and it’s role in a Class
- Constructors, types of Constructor,
- Constructor Rule, Constructor Overloading
- Static Variable and it’s
- Methods and their
- Constructor vs Methods
- “this” Keyword
- Java Access Modifiers (and Specifiers)
- Call by value, Call by reference
- What is a Command-Line Argument?
- Java Application with Command-Line Arguments
- Conversion of Command-Line Arguments
- Passing Command-Line Arguments
- Using various Editors
- Program Compilation, Execution in Editor
- Using Eclipse IDE
- Project Set Up
- Source File Generation
Application Compilation and Run
- First View of Inner Class
- Outer Class Access
- Types of Inner Class
- Complete concepts of Inheritance
- Sub-Classes
- Object Classes
- Constructor Calling Chain
- The use of “super” Keyword
- The use of “private” keyword
- Reference Casting Inheritance
- Introduction to Abstract Methods
- Abstract Classes and Interface
- Interface as a Type
- Interface v/s Abstract Class
- Interface Definition
- Interface Implementation
- Multiple Interfaces’ Implementation
- Interfaces’ Inheritance
- How to create object of Interface
- Introduction to Polymorphism
- Types of Polymorphism
- Overloading Methods
- Overriding Methods
- Hiding Methods
- Final Class and Method
- “Is-A” vs “Has-A”
- Association Vs Aggregation
- Package and Class path and its use
- First look into Packages
- First look into Class path
- Class path Setting
- Class Import
- Package Import
- Role of public, protected, default and private r.t package
- Namespace Management
- Package Header File
- Creating and Using the Sub Package
Sources and Class Files Management
- Introduction to Exceptions
- Effects of Exceptions
- Exception Handling Mechanism
- Try, catch, finally blocks
- Unchecked Exception
- Throw & throws keyword
- Custom Exception Class
- Chained
- Resource handling & multiple exception class
- Creating a Thread by inheriting from Thread class
- Run() and start()
- Constructor of Thread Class
- Various Method of Thread Class
- Runnable Interface Implementation
- Thread Group
- Thread States and Priorities
- Synchronization method, block
- Class & Object Level Lock
- Deadlock & its Prevention
- Inter thread Synchronization
- Life Cycle of Thread
Deprecated methods : stop(), suspend(), resume(), etc
- Types of Streams
- Stream Class Hierarchy
- Using File Class
- Copy and Paste the content of a file
- Byte Streams vs Character Streams
- Text File vs Binary File
- Character Reading from Keyboard by Input Stream Reader
- Reading a Line/String from Keyboard by Buffered Reader
- Standard I/O Streams Using Data Streams to read/write
- primitive data
- PrintStream vs PrintWriter Using StreamTokenizer and RandomAccessFile
- Using Object Streams to read/write object
- Transient Keyword
- Serialization Process
- Deserialization Process
- Generics(Templates)
- What is generic
- Creating User defined Generic classes
- The util package
- Collection
- What is Collection Framework
- List, Set & Map interfaces
- Using Vector, Array List, Stack,
- Linked List,
- Using Collections class for sorting
- Using Hashtable, Hash Map, Tree Map,
- SortedMap, LinkedHashMap
- Iterator,
- Using Queue, Deque, SortedQue,
- Using HashSet, TreeSet, LinkedHashSet etc
- Using Random class
- Using Properties in a Java Program
- Using user defined class for DataStructure
- Using Date and Formatting Date
- Interview related Question and Answer
Selenium
- What is Automation Testing?
- Advantages of Automation Testing?
- Fundamentals of test automation
- ROI in Automation
- Automation framework
- arious tools and comparison with Selenium
- What is Selenium?
- Components of Selenium Suite
- Advantages of Selenium
- Limitations of Selenium
- What is Selenium WebDriver?
- Advantages of Selenium
- What is the difference between Selenium and QTP?
- Why WebDriver?
- Downloading webdriver Jars configuring in eclipse
- What Selenium is and how it is used in the industry
- Features of Selenium
- Selenium IDE – Overview with a couple of examples
- WebDriver Architecture
- Installation of Selenium and supporting tools/Frameworks
- Drivers for Firefox, IE, Chrome, Iphone, Android etc
- What is the difference between Selenium RC and WD?
- eclipse-Oxygen
- JDK 8
- Firefox 0.1, firebug and file path
- Set up TestNG, Maven and Selenium (2.53.1 &3.0 +) for eclipse
- Simple WebDriver Program Demonstration
- Basics of HTML page, tags, attributes, and visible texts
- Importance of attributes in locating elements
- Installation of Firebug and Firepath in Firefox browser
- Locators and Eight Locating Techniques
- Creating robust locators using CSS and XPath
- Execute Tests in Firefox, Chrome, and Internet Explorer
- WebDriver Commands: Driving Browsers and Handling Cookies
- WebElement Commands
- Handling Various WebElements
- WebDriver Timeout Methods
- Handling Multiple elements using find Elements() method
- Handling Alerts, Pop-ups, and Frames
- Limitation of Implicit Wait and how Explicit Wait helps
- Advanced User Interactions
- Taking Screenshots
- Working with Firefox profiles
- Handling File Uploads Using AutoIT
Introduction to Flash Application Testing using Selenium WebDriver
- Arranging Tests in 3-As format
- I.R.S.T Principles and SRP
- Various Annotations in TestNG
- TestNG configuration file
- Configuration Annotations
- Attributes of @Test
- Parallel Test Execution Capability
- Assertion APIs
- Passing Parameters to Tests
- Configuring Test Suites
- Reports using TestNG
Reports using ReportNG
- Introduction to various frameworks
- Page Object Design Pattern
- Data Driven Tests using TestNG and POI
- Introduction to Maven and ANT
- Use of Log4j
- Use of Listeners
- Typical components of a framework
- Overview of BDD, TDD
- Code Coverage in Java
- Overview of Sikuli tool for UI testing
- Introduction to Jenkins
- Configuring Jenkins to invoke Selenium Tests
- Develop Test automation
- What is a framework
- Types of framework
- Data driven framework
- Modular driven framework
- Keyword driven framework
- User Defined Keyword driven framework with implementation
- Execute test scripts from the framework
- Agile Testing
- Behaviour Driven Development (BDD)
- Advantages and Limitations of BDD
- Cucumber Fundamentals
- Gherkin Syntax in Cucumber
- Step Definition for Cucumber Feature File
- Advantages of Cucumber
- Implementing BDD Framework using Cucumber
- Automate an eCommerce Application
- Test Automation Requirements Description
- What Next? How to Start?
- High Level Framework
- Configurability—No To Hard-Coding
- Modularity—Re-Use And DRY
- Test Data Management
- Logging And Reporting
- Introduction Mobile App Test Automation
- Introduction to Appium
- UIAutomator with Appium
- Locating Elements – UIAutomator framework
- Desired Capabilities for Android
Post Selenium
- Introduction about maven
- High-Level Overview
- Ant vs Maven
- Installation of Maven
- Downloading and configuring Github
- Difference between CVC Versus DVC
- Basic Git Commands
- Working with Repositories
- Setting up Repositories
- Local and Remote Repositories
- Create repository and cloning projects
- Committing and Syncing the code
- Reverting and Rolling Back the Code
- Branch and Merging Concepts and Implementation
- Stashing Changes
- Resolving the Conflicts
- About Jenkins
- History of Jenkins
- Splitting of Projects
- What is Continuous Integration
- Installing Jenkins
- Creating a simple job
- Integrating Jenkins to the Project
- What is Ant
- XSLT Report generation using TestNG and ANT
- Building utility functions
- Building BAT for project execution
Building BAT to run tests using ANT
- JUnit’s Annotations
- JUnit’s Methods
- JUnit Test Suites
- Ant Build and JUnit Reporting
- Logging Introduction
- Log4J framework Introduction
- Layout Introduction
- Types of Layout
- Appender Introduction
- Types of Appender
Upcoming Batch
- Start: 20 July 2024
- Time: 10.00am -11.00am
- Duration: 2.5 months
- Cost : 15,000.00
Call for assistance:
Training includes Hands-On Learning, 6 months of support and Placement Assistance of follow-up instructor support.
Address:
Destination Center 1, Nanded City, S79, Nanded, Pune, Maharashtra 411068