Selenium with Python

This course will start you with the Selenium toolset, most specifically Webdriver. When it comes automating the web interface with Selenium, one of the most important skills is to identify the page-elements through various supported locators. Of all its techniques, constructing a concise and readable XPath is arguably the most unique and irreplaceable skill. We'll discuss several Selenium APIs that go into building a reliable and efficient automation suite. Concepts about unit testing will be discussed towards end of the course, and will use that to build a PageObjectModel based framework. We'll wrap up the course with a project that allows you to demonstrate what you've learnt through the course.

Upcoming Batches

May 9th

Weekends (Sat/Sunday)
5 weeks (25 hours)

Timings - 09:00 AM to 10:00 AM (IST)



  • What is automated testing?

  • What should be (and should not be) automated?

  • When to automate?

  • What is selenium?

  • Selenium tools - IDE, Webdriver.


  • Element identification

  • Browser developer tools

  • Locators: id, name, tagname, classname, CSS, XPath


  • Record/playback

  • Familiarize with environment

  • Test cases and suites

  • Export to Python


  • Python shell

  • Python IDE

  • Selenium installation

  • Webdrivers (chromedriver, geckodriver etc)

  • Modules (UnitTest, nosetest)


  • Conditions

  • Functions

  • Python objects

  • Assertions/Exceptions

  • Classes

  • File I/O

  • Regular Expressions

  • Modules(os, selenium, re)


  • send_keys, click

  • Implicit/explicit waits

  • Capturing screenshots

  • Handling alerts

  • Handling pop-ups

  • Handling multiple windows

  • Handling web tables

  • Actions class

  • Executing Javascript

  • Windows Registry operations

  • Data-driven testing


  • Assertions

  • Test Runners

  • Modules (unittest, nosetest)


  • What is a framework?

  • Why is it necessary?

  • Advantages of framework

  • Where and why is it an overhead?

  • Different types of frameworks

  • Walkthrough on a PageObjectModel based framework

Course Description

Good grasp on Python basics. Please note we will spend minimal time on revising the basic concepts in this course.

If you are an SDET who works to build automation suites, or anyone who is interested to know the possibilities of automating their product workflows, this course is for you.

Yes, absolutely. Python supports all operating systems. We will help you with the installation on your system.

At one hour per class, 1 month is the recommended duration of this course. If you've sound basics of programming and its environment, you could finish the course faster - as much as a week earlier. However, since our class could have mixed skills among students, we do not want to cut corners, and will spend the entire duration. In the time you save, you'll work on additional exercises.

We don't offer a quicker version as part of our standard packages, but we could work something out for you. Submit your details on our Contact form, and we will revert to you. Don't forget to mention that you are looking to finish faster.

Submit your details on our Contact form, and we will revert to you. Don't forget to mention your specific needs.

Frequently Asked Questions (FAQs)

Not mandatory, even though it's highly recommendeded that you work on the final project and submit it within a week of completing the course-work. Also, there're lots of small and interim assignments that will be assigned to you from the LMS

As much as we like to help our students in growing their careers, we are not able to do that at the moment. Having said that, we might be able to give you leads on job openings and hiring, when they become available on a public domain

Unfortunately, we are unable to do that at the moment. We believe in teaching our students the best, but we are not into certification business

- To start with, an expert teacher will be assigned to you to take care of all your learning needs, for the entire duration of the course. During this time, you may contact the teacher, either through our LMS, or through email.
- You'll get free access to our course content, hosted in LMS.
- We'll allow you free and unlimited practice on what you learn, from our website.
- We guarantee that all additional facilities we offer you remain free of cost, and will be accessible even after the course has been completed.
- We are working on adding even more facilities to our students, at no extra cost.

Online course contents hosted in our LMS, including all subsequent updates we make to it, will be available for free even after your course is completed. This access will be available for an indefinte time, unless you decide to surrender your login. In addition, we'll provide you with email support on answering your queries/doubts with respect to what you learnt with us.

There are many..Here are a couple of them.
- Our courses are well-structured and offered through Moodle LMS. Our online courses are available to all our registered students forever, and perfectly compliment the online classes.
- All our courses offer flexible and infinite amount of practice, in addition to the regular assignments.
- Our dedicated practice sessions work out of the Google cloud, and hence do not need any setup whatsoever on your part.

We use Google colab, a Jupyter-notebook like environment hosted on Google cloud. All our notebooks are meant to provide practice, and are constructed keeping our students in mind. You can access the notebooks, once you login to the LMS

Each course module carries assignments, and offers additional practice problems that can be assigned to you, if you're looking for more practice. Please work with your teacher for additional help.

Please contact us for details about pricing. But, we assure you that our courses will be among the most affordable ones you would find around

Skype or Zoom. You'll be intimated on this when you enroll

About the Trainer

Trainer Avatar

I am Anand Iyer. I am an Engineer, Teacher, Evangelist of ideas, and a Problem solver. I adore the joy and satisfaction, the process of learning, along with everything that follows it, brings forth.

To add more, I love the idea of helping others get there. I want to teach a hundred, a thousand people how to build solutions, how to solve problems with probably the best tool we've with us today - the computers, and the software that powers it.

The motivation behind putting up this website is not any different. My hope through this website is to impart with my students, my experience working on challenging environments over the last multiple decades and through that bring over a change for good in the community around us.

Checkout more about me here