The Top 52 Selenium Open Source Projects On GitHub
Posted On: October 30, 2021
27 Min Read
Insights into the Selenium Open Source Project
The idea behind the Selenium project is simple (yet highly impactful). It provides the platform where you can perform automated web browser testing across different combinations of browsers and operating systems. The same instance can be used by many different people for many different purposes; the goal is to support as many testing frameworks as possible.
At the time of writing this blog, Selenium has 21.9k Stars and 6.6k Forks on the Selenium GitHub Page. On any given day, there are typically between 150-200 active users on the Selenium users mailing list. There are also tens of thousands of active Selenium users worldwide using the Selenium framework to perform automated tests at an accelerated pace. The user mailing list is a good place to go for inspiration on how to use Selenium, ask questions about specific problems, or even keep up with happenings in the project.
According to a State of Open Source Survey, Selenium is still the go-to framework for performing automated web browser testing. Many developers and enterprises are also preferring other modern web-automation frameworks like Cypress; a Cypress vs Selenium comparison will help you make the right choice for your project and organization.
Selenium 4, the latest stable release of Selenium, has a lot more to offer when compared to the earlier version of Selenium. Selenium 4 has numerous new features like relative web locators, W3C compliance, etc. that make Selenium automation testing a more interesting task. You can go through the Selenium 4 tutorial to see what is new in Selenium 4 and much more.
🚨 Release 🚨
🎉🎉 Selenium 4.0 is here! 🎉🎉
Read all about in our blog post:https://t.co/E8ntH7OdaB
We hope you enjoy Selenium 4, and we can’t wait to see what you do with it!#selenium4
— Selenium (@SeleniumHQ) October 13, 2021
This Selenium WebDriver Tutorial for beginners and professionals will help you learn what’s new in Selenium 4 (Features and Improvements).
Hacktoberfest Selenium Open Source Projects
Hacktoberfest is a month-long celebration of open-source software. It’s free to participate and open to everyone in the world. Hacktoberfest started as a way for DigitalOcean to encourage more people to contribute to open-source software projects. Whether you are a programmer, designer, writer, tester, translator, artist, or just someone who wants to learn more about how software is made—any contribution helps!
Hacktoberfest is cross-platform. You can participate in any operating system that supports Git (which includes every current one). To keep things fun and friendly, you can sign up for Hacktoberfest by making at least four pull requests between October 1st and October 31st with any public repo on GitHub.
If you want to participate, sign up on Hacktoberfest 2021 and start coding! And also get a chance to win exciting swags.
If you are an admirer of an open-source framework like Selenium, you would be elated to see the compilation of the top 52 Hacktoberfest Selenium open source projects on GitHub:
1. Docker Selenium (5.3k Stars & 1.8k Forks)
The Selenium project is growing quickly, and the Selenium Grid is now at the center of the project. The Selenium Grid allows multiple browsers to be run simultaneously on different computers so that tests can be run faster.
The new Docker Selenium project on Docker images for Selenium Grid Server is another great example of how the open-source community is really helping us move faster. But, why use Docker images for Selenium Grid Server?
Running multiple instances of Selenium Grid Server is a terrific way to scale your test execution. However, it can get tricky to install and configure all the dependencies needed for each instance individually. Docker makes it easy to bundle everything you need into a single package that can be run anywhere seamlessly. It also helps avoid conflicts between different versions of libraries and dependencies.
Also Read – How To Run Selenium Tests In Docker?
2. Panther (2.4k Stars & 182 Forks)
Panther is a testing and web scraping library for PHP and Symfony. The current stable release of Panther is 1.1.1, released on July 14, 2021.
Panther makes it easier to run your tests on more browsers, on multiple devices, or in real browsers on cloud services. For example, let’s say you want to test your Symfony application with Chrome, Firefox, and IE10. You could download the ChromeDriver binary, install Firefox, then start them both before starting your test suite. That would work fine, but it doesn’t scale well. Or you could have your CI server spin up VMs for each browser, but you will quickly run out of capacity.
If you are using Panther, all of this is done for you behind the scenes with zero setup effort. In addition, Panther can connect directly to Selenium Grid nodes or use cloud-based cross browser testing platforms like LambdaTest.
LambdaTest is a cross-browser testing platform capable of executing tests across 3000+ online browsers and operating systems combinations in a single click.
3. Awesome Regression Testing (1.6k Stars & 133 Forks)
Regression testing is a software development practice that aims at finding bugs introduced into released versions of an application by earlier versions. Regression testing is the primary form of testing in agile development and other forms of release early and often.
Visual regression testing is a powerful technique for detecting visual changes in web applications. It allows developers and testers to detect and fix visual problems (such as contrast, color, and layout) as soon as they happen.
4. Playwright Go (519 Stars & 52 Forks)
Playwright Go is a new version of Playwright. It is a library to control web browsers from Go. It currently supports browsers that implement the WebDriver protocol, such as Chrome and Firefox.
A web browser can be controlled using the Go programming language. Currently, only three browsers are supported: Chrome, Firefox, and WebKit. However, using Playwright Go, you can create your own browser automation test suite in Go. Playwright Go provides an easy-to-use API that works with any browser that implements the WebDriver protocol.
This project also needs contributors! I hope that you will help Max Schmitt with this project! You can find it on Playwright Go, a browser automation library project on GitHub.
Starting your journey with Playwright Testing? Check out how you can test your Playwright test scripts on LambdaTest’s online cloud.
5. Webdrivers (504 Stars & 77 Forks)
A recent discussion on the Selenium mailing list made me realize that many developers are unaware that Selenium’s WebDriver implementation is open source. Furthermore, they don’t realize that the version of the WebDriver they’re using is out-of-date and that there might be a better version available.
However, a big problem with WebDriver is that it is not easy to update versions. Every time the Selenium WebDriver team releases new versions, developers have to migrate their old configuration files. So they tend to wait until things break before migrating. But if you don’t migrate often enough, you may be using old versions of WebDriver that contain security vulnerabilities.
With Webdrivers open source project, it is easier to perform Selenium testing on the major browsers. It works by automatically installing (or updating) all of the webdrivers you need, downloading them from the official servers, and keeping them up-to-date.
This certification is for anyone who wants to stay ahead among professionals who are growing their career in Selenium automation testing.
Here’s a short glimpse of the Selenium 101 certification from LambdaTest:
6. PyWhatsapp (303 Stars & 132 Forks)
PyWhatsapp is a free and open-source Python desktop application for WhatsApp. It acts as a wrapper of WhatsApp’s Android API and allows you to automate some of the tasks that you could do manually (for example: sending messages and media at scheduled times).
Since PyWhatsapp is based on scheduled messaging, the script will help you schedule the sending of messages and media from WhatsApp to be sent at specific times. However, doing this manually would be a very lengthy task, so using this script will save you a lot of time.
This project on Python automation using Selenium & scheduling of messages and media is for the benefit of other developers and mainly to get some feedback from them.
7. Alsatian (253 Stars & 31 Forks)
You can find more on the Alsatian project on GitHub.
8. Python Scripts (215 Stars & 131 Forks)
There are many different types of Python Scripts in this GitHub repo. Some of them are used for automation, monitoring the system, data storage, or creating the database. All the Python scripts you find here are open-sourced, and you can use them in any form for free.
These scripts are different from regular Python scripts, they have been created to perform a single task, and they will do exactly that without any extra work. The purpose of this repo is to make some tools/scripts handy for everyone who uses them.
9. Pyleniumio (147 Stars & 24 Forks)
The Pyleniumio project brings the best of Selenium and Cypress into a single Python package.
While Selenium is a great general-purpose test automation framework, it’s not optimized for testing web applications. Cypress, on the other hand, is built specifically to test web apps but lacks the flexibility of Selenium.
Pylenium is a new Python module that brings the best of both worlds into a single small package. The end goal is to provide the best, most complete browser automation package available in Python.
Read More – Selenium vs Cypress – Which Is Better in 2021?
10. Aet (105 Stars & 41 Forks)
AET project is an open-source project by Yahoo designed to detect visual changes on websites and perform basic page health checks. It is written in Python and can be used to create your own web crawler (aet-crawler) or run it behind a proxy server (aet-proxy).
It uses BeautifulSoup to crawl the website, lxml to parse the HTML code, and urllib2 to access remote pages.
11. Hacking Scripts (98 Stars & 220 Forks)
The main aim of the Hacking Scripts project repository is to provide utility scripts that might make everyday life easy while working on different projects. It has a huge collection of useful Python scripts to automate tasks, web scraping jobs, data processing jobs, etc.
If you have any suggestions or found any bug or error, please report it at Hacking-Scripts issues.
12. Whatsapp Scraping (72 Stars & 55 Forks)
WhatsApp Web has some interesting features that can be used to get the contact information of WhatsApp users. This small Python script for WhatsApp Scraping will get the WhatsApp profile of any WhatsApp user you input into the script.
13. Instagram Giveaways Winner (86 Stars & 18 Forks)
Instagram Giveaways Winner is a spam bot for Instagram. It is a small program written in Python which is able to spam mentions of a post on Instagram by automatically liking and commenting. It works by searching the post URL on Instagram and then liking, following, and commenting on it. This will increase the chances of you winning an Instagram giveaway.
This Instagram Giveaways Winner bot was made to make life easier for you. You can now win any giveaway without having to waste countless hours doing it manually. As this bot runs automatically, it cannot guarantee you will win every time, but it should definitely improve your chances!
14. Coteafs Selenium (57 Stars & 22 Forks)
Coteafs Selenium is a lightweight wrapper framework for WebDriver, the default browser automation library.
The idea behind Coteafs Selenium WebDriver wrapper is to let you focus on writing the tests themselves and let the framework take care of other stuff. The goal is to have a clean and maintainable test suite that will not bite you later when things change.
15. Mexican Jobs 2020 (20 Stars & 2 Forks)
The official Mexican Job Board contains thousands of jobs from all over Mexico, from all kinds of companies. The Mexican government publishes a yearly report on data and analysis of jobs and salaries in Mexico. The Mexican government collects this information from hundreds of thousands of job postings from the official Mexican job board. They publish an excel spreadsheet with all of the information, and it is available for download on their website.
This Mexican Jobs 2020 repository will help you with the complete process of gathering data from Aug 2020 using web scraping, cleaning it, and analyzing it.
16. Selenium BDD Framework (19 Stars & 15 Forks)
Developing applications that are used by people requires the ability to deal with all kinds of different behavior. Thankfully there is now a large number of open-source software frameworks that allow you to integrate automated acceptance tests into your development workflow easily. These frameworks use the WebDriver protocol to control browsers using Selenium, which provides an API for controlling web browsers.
The Selenium BDD Framework project has an active community, and frameworks such as Cucumber-JVM (written in Java) using Selenium, TestNG, Maven, PhantomJS give you great flexibility when writing your tests.
17. Legerity (17 Stars & 4 Forks)
Artificial intelligence is a hot topic in the mobile development world, and rightly so. But the ability to identify objects on a screen remains a big challenge for developers. Yet this should not surprise us: the first step toward a solution is to recognize that a problem exists! And maybe, we’re getting there.
The latest evidence comes from Microsoft, with the announcement of Legerity. This is a framework for speeding up the development of automated UI tests for Windows, Android, iOS, and Web with Appium/Selenium on .NET. In simple terms, this means that developers can automate testing their apps on multiple platforms with a single code base. In addition to being open-source (on GitHub), the Legerity project is also backed by Microsoft’s AI research team’s efforts to improve object recognition using “deep learning” methods.
18. Selenium Python (15 Stars & 3 Forks)
Selenium WebDriver is an open-source library for client-side automated testing of web applications. The library is used in an automatic software testing framework. It helps in making the test automation easy by using the web browser to execute tests that are written in several programming languages like Java, Ruby, Python, etc.
However, a few of its drawbacks, like not being capable of handling window components, can be overcome by using tools like Sikuli, Auto IT, etc.
Go through the Selenium Python project on GitHub to contribute and explore more on this.
Also Read – Getting Started With Selenium Python [Tutorial]
19. Social Scheduler (12 Stars & 36 Forks)
Social Scheduler is a simple web application that allows you to schedule an event reminder to your account. It’s a tool for everyone who wants to keep their social media profiles up to date or just wants to have more invites for them!
The Social Scheduler project allows you to auto-send invites to all of your social media accounts like LinkedIn, Facebook, email, WhatsApp, Instagram as soon as you finish filling the form.
20. Plugin Php (11 Stars & 14 Forks)
The idea of using PHP to run functional tests is not new. But building a plugin for Athena, which allows you to write tests in PHP and make them available to be run through the command line like any other type of test, that’s something new.
The project is called Athena Plugin Php (aka APHP), and it’s hosted on GitHub.
21. Dnevnik_mos_ru (11 Stars & 3 Forks)
Dnevnik.mos.ru is a website where you can write an electronic diary and read other people’s diaries. This Dnevnik_mos_ru project allows easy access to dnevnik.mos.ru API from the Python scripts.
In short, this module is a wrapper for dnevnik.mos.ru API to access the site news.
22. Coursearch (9 Stars & 3 Forks)
Coursearch is a one-stop solution to navigate the endless sea of online courses. It serves two main purposes: to help people interested in improving their skills by providing them with the best online learning materials and helping course providers offer their courses and get students through Coursearch’s open architecture and by creating a community around the courses.
The beauty of this Coursearch project is that it can be developed using open source technologies, so we can all contribute to it and build something useful for everyone!
23. Whatsapp Spammer (11 Stars & 6 Forks)
Whatsapp Spammer is a GUI(Graphical User Interface) based Automated spammer for WhatsApp using .NET Framework’s System.Net.Sockets class library. With this Whatsapp Spammer project, one can easily and quickly create and send bulk WhatsApp messages to any number of contacts.
24. Twitter Bot (9 Star s& 13 Forks)
The idea of this Twitter Bot project is to create a Twitter bot that will automatically like and retweet tweets based on keywords, hashtags, or usernames. You can use it to interact with users, create your own hashtag campaign, and much more!
25. Whatsapp Bulk Messaging Bot (8 Stars & 2 Forks)
This Whatsapp Bulk Messaging Bot project was created after reading about WhatsApp API’s new feature that allows you to send messages in bulk to your contacts. This API is very interesting for companies because you can send promotional messages to your clients via WhatsApp.
26. Webdriver Client (8 Stars & 10 Forks)
The Webdriver Client project is a low-level WebDriver client for Elixir. It is intended to be a replacement for the official Selenium bindings for use in situations where you need more control or better performance. It has been tested with ChromeDriver and Geckodriver but should work with any WebDriver implementation.
27. Scrapy Sipac Processos (10 Stars & 2 Forks)
The objective of this Scrapy Sipac Processos project is to create an API that returns the movements of two processes in the UFPB. The aim is to provide greater accessibility to this data, both by students and professors of the institution and by agencies and institutions interested in knowing the movements of the processes.
28. Youtube Infinite Scroll (7 Stars & 3 Forks)
This Youtube Infinite Scroll project uses SQLModel and htmx to generate an infinite scroll of videos of a YouTube channel. This demo should work in all modern browsers. However, if your browser does not support the HTML5 video element, you will just get a static image of the video. This project can be run either locally or on Heroku.
Follow the LambdaTest YouTube Channel and stay updated with the latest videos on Selenium 4, Selenium Java, Cypress, CI/CD, and more.
29. Automate (5 Stars & 1 Fork)
Automate project is a web application – currently in Python – to scrape your attendance/marks from AURIS (Ahmedabad University Resource Information System). Automate scrapes are stored in a MySQL database. This project also uses BeautifulSoup4 to do the required scraping work.
30. WhatsappScraper (7 Stars & 6 Forks)
WhatsappScraper is a Python script that allows you to get all the messages and images from a WhatsApp group or a single person’s WhatsApp.
Here are some of the main features of this WhatsappScraper project:
- Download all the images, audio, and videos from a chat.
- Download all the phone numbers and names of people in a chat.
- Download all the contacts from an account.
- Download the whole chat history from an account.
31. Google Image Downloader (5 Stars & 0 Fork)
Google Images Downloader project is a Python program to search keywords/key-phrases on Google Images and download its images to your computer. It utilizes the Google Image Search API, which is still in “Preview” status.
32. Lbry Batch Upload (4 Stars & 1 Fork)
This Lbry Batch Upload project is a command-line tool that will automatically upload an entire album from a directory to the LBRY network. The idea is that you can upload any kind of digital content to the LBRY network and then embed links to that content into websites or share with friends on social media without worrying about takedowns or other censorship.
33. Linkedin Connection Bot (5 Stars & 1 Fork)
LinkedIn is known as the best platform for business; it helps us to connect with people who are really influential and build up our relationships with them. But what if you want to contact your country’s top person? How do you do that?
This is a simple Linkedin Connection Bot project that can help you send a connection request to a specified list of tags in specified LinkedIn groups.
34. Linkedin Auto Apply (4 Stars & 3 Forks)
LinkedIn Auto Apply project is a Node.js module that automates the tedious job of applying to jobs on LinkedIn. So, if you are looking for a job or want to make your resume available online, this script will do the tedious work for you.
35. Pomace (3 Stars & 2 Forks)
Pomace is a library for creating dynamic page objects for browser automation in Python. It is a fork of Selenium with a few changes.
It provides an interface that is similar to the Python UnitTest module but for browser automation. In addition to providing a framework for testing, Pomace also makes it easy to use multiple browsers from the same test code.
36. School Health Declaration Automation (3 Stars & 0 Fork)
A web application that could automate the daily school health declaration process and would greatly benefit teachers and students alike.
The purpose of the School Health Declaration Automation project is to automate the process of filling out the daily school health declaration form and to improve the accuracy and speed of this process.
37. Gic (3 Stars & 8 Forks)
Gic is a CLI tool for GitHub projects. It allows you to create GitHub Issues out of your GitHub Pull Requests automatically. You can choose between HTML or markdown reports, which are then mailed to the pull request author and optionally to other people.
38. Vocab List Gen (4 Stars & 7 Forks)
The Vocab List Gen is a handy tool for creating vocabulary lists. Vocabulary lists are useful for learning foreign languages, memorizing poetry, or studying for tests.
Often there are multiple definitions of a word floating around in your head, and you can’t remember which definition goes with which word. For instance, you might have the words “car” and “automobile” defined separately, but you can’t remember which definition goes with which word.
The Vocab List Generator lets you enter these definitions into a single list. Once you’ve got everything in one place, it’s easier to study and memorize the words – because it’s easier to remember what they mean.
39. Pesu Auth (4 Stars & 3 Forks)
Pesu Auth provides methods for retrieving values from PESU credentials and validating those values against the encrypted strings found within the PESU platform database. It also provides methods of generating new encrypted values for PESU credentials and removing existing credentials from the database.
40. Tinder Bot (2 Stars & 13 Forks)
Tinder Bot is a web app made using Python, Django, and Selenium. It works by swiping right and left for profile pictures in Tinder and then sending a message if it finds a match. It then keeps the connection alive by sending messages every ten minutes. The bot also has a profile picture and name to make it look more legit. The bot can be used for good or evil purposes, so use it wisely.
41. Secondary Domain Tasks 20 (2 Stars & 20 Forks)
A list of tasks that can make your life better. It is called the Summer of 2020 or Secondary Domain Tasks 20 project. It is easy to do these projects when you are motivated–when you are fired up about something. It’s much harder to get started when you are not feeling supercharged about anything in particular. What makes it easier is having a list of things that fit the “not urgent, but really nice” description. And when you finish one of these projects, it feels great.
42. BasinFramework (3 Stars & 0 Fork)
The BasinFramework project is an opinionated browser test framework around Selenium WebDriver. It was originally created to speed up and simplify the development of tests for BasketBallApp, a Python web framework. The framework is currently in the beta stage and not officially supported by the developers. However, community support is available via chat.
43. Scrapy_cloud_headless (2 Stars & 1 Fork)
Scrapy Cloud is a platform to run Scrapy crawlers on AWS Lambda. With the help of crawlera-headless-proxy, you can use your favorite Scrapy project without having to worry that your targets are not compatible with Scrapy Cloud.
Scrapy Cloud supports three execution environments: Scrapy, Scrapinghub, and custom Docker containers. This sample project has been developed to show how to deploy a custom Docker container on Scrapy Cloud.
This Scrapy_cloud_headless project is used as the default template of the Docker image for running crawlers on Scrapinghub, so it’s more or less the same code that you’re going to use if you want to run this on Scrapinghub.
44. Home (1 Star & 0 Fork)
Today, organizations are looking to build more agile teams across the board, including the QA team. This has led to a new class of tools being built by open source communities that are specifically targeting this need. Home project is one such tool. It is built specifically for Salesforce and is an automation framework that allows you to build automated user interface tests in record time.
Salesforce is a cloud-based platform for CRM and other functions. It’s a web service that provides a mobile app, a browser-based interface, and other components. And it provides an API for building apps that talk to the main service. In fact, there are lots of APIs for Salesforce, which makes it a great testing target, but also complicates things a bit.
45. Duolingo Streak Saver (1 Star & 0 Fork)
The main purpose of the Duolingo Streak Saver project is to automate the process of getting my daily “checkin” streak on Duolingo. This way, you don’t have to bother about opening the Duolingo website every day, logging in, and doing a lesson. Instead, you can just run this script as a cron job once a day, and my streak will continue uninterrupted.
46. Not Quite Daily Scraper (3 Stars & 0 Fork)
The Not Quite Daily Scraper is a simple Python script that downloads one of six webcomics every day. It’s just a quick and dirty project made on a whim, but it is fun to do. It works by writing to a text file the URL of the comic on the website and then downloading it using requests. Unfortunately, the code doesn’t handle redirects, so it won’t automatically find the new location if the comic is moved. But you can edit the file and add or remove comics pretty easily.
47. Spin My Wheel (1 Star & 1 Fork)
Spin My Wheel is a website that uses the Wheelio spin pop-up. The goal of this project was to scrape and capture all the coupons available on the site and store them in a database for later use. This project was created as a personal interest, and no affiliation with the company or product is implied.
48. Send Email Download Images Find Broken Links (1 Star & 2 Forks)
SendEmail uses a different approach that doesn’t use Selenium. Selenium is a great tool. But it has limitations, especially when it comes to sending emails. In fact, many SEOs have given up on automated email tests. For example, if you search for “selenium email,” you’ll find plenty of people complaining about the problem of writing reliable tests to send an email. An alternative approach that works is reliable and very fast. And, more importantly, it can be adapted to work with any email service provider (Gmail, Yahoo, Outlook, etc.).
This Send Email Download Images Find Broken Links project will help you learn about the programming language Python and build your portfolio. The project is to automate a process using Selenium. You can select from a variety of tests to complete, such as finding broken links on a website or downloading images from a certain page.
49. Web Scraping (1 Star & 1 Fork)
Web scraping is a software engineering technique that involves extracting information from web pages. The process of extracting data from websites, and transforming it into a format suitable for use in databases or analysis, is known as web data extraction.
The Web Scraping project includes a series of simple projects that will help you practice Web scraping and parsing.
50. Amazon Scraping (1 Star & 1 Fork)
If you need to get information from Amazon, whether it’s product prices or product reviews, this library will help you. This Amazon Scraping library is intended for scraping Amazon products and getting data out of them.
51. Cogniwapp (2 Stars & 2 Forks)
Cogniwapp is a solution for helping people to communicate much more effectively in the noisy online world. As a user, you will add words/phrases inside a list of forbidden/blacklisted/critical words/phrases, and then you will be able to use the application to send messages that will be filtered by your own rules.
52. Manga (0 Star & 1 Fork)
Manga, which is short for Japanese comics, is read in various ways. They are usually printed in black and white on thin paper, in large pages read from right to left.
The Manga project is a free software comic-reader that allows you to read Manga comics in a Linux environment. It is designed for both beginners and experts.
This completes the list of the top Selenium Open Source projects on GitHub. However, you can go through the Top 52 Hacktoberfest Selenium Open Source Projects on GitHub to deep dive into each one of these.
GitHub has been a Selenium hub for more than a decade. But what are the most popular open-source projects on GitHub? In this post, we discussed the top 52 Selenium open source projects on GitHub.
We used GitHub to find popular Selenium open-source projects and bring them to you. We used the number of contributors and the number of stars to rank each project. We curated this list for the Selenium community and tried to be fair and unbiased. However, we may have missed something or some project that deserves to be on this list. Feel free to comment and let us know.
Frequently Asked Questions
What is open-source Selenium?
Selenium is an open-source testing tool that allows users to test web applications across different browsers and platforms. Selenium helps you to build robust, high-quality automated tests for your Web application, reducing the cost of software regression testing, improving the quality of your software development effort.
What is Selenium GitHub?
Selenium is a browser automation framework and ecosystem. The Selenium project on GitHub includes a range of tools and libraries that enable and support the automation of web browsers.
Got Questions? Drop them on LambdaTest Community. Visit now