Advance Excel Course in Bangalore

Marathahalli Branch

Selenium with Python Course Marathahalli

Master the art of test automation. Learn to write robust Python scripts, handle dynamic elements, and integrate with Selenium WebDriver to become a certified automation engineer.

Duration
2 Months
Mode
Classroom
Fee
₹16,520/-

    Enquire Now






    Enquiry Sent!

    We will contact you shortly.

    Course Curriculum

    1

    Python Essentials for Automation

    • Python installation, pip, and IDE setup (PyCharm / VS Code)
    • Variables, data types, operators, and type casting
    • Conditional statements: if, elif, else
    • Loops: for, while, break, continue
    • Functions: parameters, return values, and lambda functions
    • Lists, tuples, dictionaries, and sets with methods
    • String operations, formatting, and built-in methods
    • File handling: reading/writing txt, CSV, and JSON files
    • Exception handling: try, except, finally, and raise
    • Modules, packages, and importing standard libraries
    2

    Selenium WebDriver Setup & Basics

    • Introduction to Selenium – history, versions, and architecture
    • Installing Selenium via pip and configuring WebDriver
    • ChromeDriver, GeckoDriver, and EdgeDriver setup
    • Launching browsers and navigating URLs
    • Browser commands: get, back, forward, refresh, quit, close
    • Maximizing window, setting window size, and screenshot capture
    • Understanding the Selenium WebDriver API structure
    • Running your first automated test script end-to-end
    3

    Web Element Locators & Interactions

    • Locator strategies: ID, Name, Class Name, Tag Name
    • XPath – absolute, relative, and advanced expressions
    • CSS Selectors – class, ID, attribute, and pseudo-selectors
    • Link Text and Partial Link Text locators
    • find_element vs find_elements – usage and differences
    • Clicking buttons, entering text, clearing fields
    • Handling checkboxes, radio buttons, and toggle switches
    • Dropdown handling using the Select class (by value, index, text)
    • Multi-select dropdowns and deselecting options
    • Reading element attributes, text, and CSS properties
    4

    Waits, Alerts, Frames & Windows

    • Implicit waits – global wait configuration
    • Explicit waits using WebDriverWait and Expected Conditions
    • Fluent waits – polling interval and custom conditions
    • Handling JavaScript alerts, confirms, and prompt dialogs
    • Switching between iFrames using index, name, and WebElement
    • Returning to default content from a frame
    • Handling multiple browser windows and tabs
    • Switching windows using window handles
    • JavaScript Executor: scroll, click, and get/set values via JS
    • Handling stale element and no-such-element exceptions
    5

    Advanced Interactions & Actions Class

    • ActionChains class – mouse and keyboard automation
    • Mouse hover, right-click (context menu), and double-click
    • Drag and drop using offset and target element
    • Keyboard actions: key_down, key_up, send_keys with Keys class
    • Handling file uploads using send_keys on input elements
    • Handling file downloads and configuring browser preferences
    • Scrolling to element and scrolling by pixels
    • Taking element-level and full-page screenshots
    • Handling dynamic web tables – rows, columns, and pagination
    • Calendar/date picker automation techniques
    6

    PyTest Framework & Test Management

    • Introduction to PyTest – installation and project structure
    • Writing test functions, test classes, and naming conventions
    • Assertions: assert statements and assertion messages
    • Fixtures: setup, teardown, scope (function, class, module, session)
    • conftest.py – shared fixtures across test files
    • Parametrize decorator for data-driven tests
    • Markers: skip, xfail, custom markers, and filtering tests
    • Running tests with command-line options and pytest.ini config
    • Generating HTML reports with pytest-html plugin
    • Allure reporting – annotations, steps, attachments, and dashboard
    7

    Page Object Model (POM) Design Pattern

    • Why POM? Benefits of separating locators from test logic
    • Structuring a POM project: pages/, tests/, utilities/ folders
    • Creating Page classes with locators as class attributes
    • Defining action methods within Page classes
    • Base page class and inheritance for common methods
    • Initializing WebDriver via constructor and driver injection
    • Calling Page methods from PyTest test functions
    • Handling dynamic locators using string formatting in POM
    • Reusability of page components (header, footer, nav)
    • Refactoring existing scripts into the POM structure
    8

    Data-Driven & Hybrid Frameworks

    • Data-driven testing concepts and benefits
    • Reading test data from Excel using openpyxl library
    • Reading test data from CSV and JSON files
    • Passing multiple data sets via @pytest.mark.parametrize
    • Keyword-driven testing – action keywords and data tables
    • Hybrid Framework – combining POM + Data-Driven + Keyword-Driven
    • Utility classes: ExcelUtil, LogUtil, ScreenshotUtil
    • Logging with Python's logging module – levels and file handlers
    • Configuration management using config.ini and configparser
    • Environment-based test execution (dev, staging, production)
    9

    Cross-Browser Testing & Selenium Grid

    • Cross-browser testing concepts and browser compatibility issues
    • Parameterizing browser choice in PyTest fixtures
    • Introduction to Selenium Grid – Hub and Node architecture
    • Setting up Selenium Grid 4 with Docker
    • Running tests in parallel on multiple browsers and OS
    • Desired Capabilities and browser options (headless mode)
    • Introduction to BrowserStack and Sauce Labs integration
    • pytest-xdist plugin for parallel test execution
    • Analyzing parallel test results and failure screenshots
    10

    API Testing & Database Validation

    • Introduction to REST APIs – HTTP methods, status codes, headers
    • API testing using Python's requests library
    • Validating GET, POST, PUT, DELETE responses in PyTest
    • Parsing JSON responses and assertion on response body
    • API test chaining – using response data in subsequent calls
    • Introduction to Postman for manual API verification
    • Database testing basics with sqlite3 and mysql-connector-python
    • Writing SQL queries to validate backend data after UI actions
    • Connecting Selenium UI tests with database validation checks
    11

    CI/CD Integration with Jenkins & Git

    • Introduction to version control with Git – init, add, commit, push
    • GitHub: creating repositories, branching, and pull requests
    • Connecting automation project to GitHub remote repository
    • Introduction to Jenkins – installation and job creation
    • Configuring Jenkins to pull code from GitHub
    • Running PyTest suites as a Jenkins build step
    • Publishing Allure/HTML reports as post-build actions in Jenkins
    • Scheduling automated test runs with Jenkins cron triggers
    • Introduction to GitHub Actions as a CI/CD alternative
    • Understanding CI/CD pipeline stages in an SDET role
    12

    Capstone Project & Career Preparation

    • End-to-end automation of a real e-commerce web application
    • Full Hybrid Framework setup from scratch (POM + Data-Driven)
    • Automating: login, search, cart, checkout, and order flows
    • Integrating API validations alongside UI test scenarios
    • Database checks to verify order and user data in backend
    • Generating Allure reports with screenshots on failure
    • Connecting the project to Jenkins for scheduled CI runs
    • Code review session: clean code, naming conventions, comments
    • Project walkthrough and Q&A with industry mentors
    • Building automation portfolio and GitHub profile for job applications

    Why Choose RIA Institute?

    🤖

    Automation Experts

    Learn from automation engineers who have tested complex web applications using Selenium and Python frameworks.

    🌐

    Live Browser Testing

    Get hands-on experience running scripts against real browsers (Chrome, Firefox, Edge) in our labs.

    👨‍💻

    Python Proficiency

    We teach Python best practices alongside Selenium, ensuring your code is clean, efficient, and maintainable.

    🤝

    Career Support

    Dedicated placement assistance for roles like SDET (Software Development Engineer in Test).

    Call Now Button