Python Test Automation Frameworks

In this post, NGA will walk you through major Python frameworks that can be used for test automation and building robust test automation frameworks for your clients.

UI Automation Frameworks:

  • selenium webdriver - Browser automation tool.

  • robotframework-selenium2library - Web testing library for Robot Framework.

  • selene - Concise UI tests in Python + Ajax support + PageObjects + Widgets

  • seleniumbase - A simple Python framework for building test automation with Selenium WebDriver. It depends on pytest or noose modules to run. When used with noose a HTML report can be generated in the end of the test run.

  • Toolium - Toolium is a Python wrapper tool of Selenium and Appium libraries to test web and mobile applications in a single project. It provides a way of choosing and configuring the driver through a configuration file, implements a Page Object pattern and includes a simple visual testing solution.

  • webdriver_manager - The main idea is to simplify managemet of binary drivers for different browsers.

  • gauge - Gauge is a light weight cross-platform test automation tool. It provides the ability to author test cases in the business language, actually written in golang with python language driver.

  • - Pylenium brings the best of Selenium, Cypress and Python into one package.

  • Playwright - Playwright is a Python library to automate Chromium, Firefox and WebKit browsers with a single API. Playwright delivers automation that is ever-green, capable, reliable and fast.

  • splinter - A tool for test web applications with a simple for find elements, form actions, and others browser actions.

  • testutils sst - A web test framework that uses Python to generate functional browser-based tests.

  • wtframework - Framework for configurable Web Tests in Python.

  • webium - A Page Object pattern implementation library for Python

  • elementium - jQuery-style syntactic sugar for highly reliable automated browser testing in Python

  • slickqa - The slick-webdriver-python project is a wrapper around the python webdriver client bindings.

  • hitch - A high level integration testing framework for service based applications.

  • Needle - Needle is a tool for testing visuals with Selenium and nose. It checks that CSS renders correctly by taking screenshots of portions of a website and comparing them against known good screenshots. It also provides tools for testing calculated CSS values and the position of HTML elements.

  • PyPOM - PyPOM is a Python Page Object Model library for Selenium and Splinter tests.

  • pypom_form - PyPOM based page object model for schema based forms.

  • POM - POM is Page-Object-Model microframework to develop web UI tests easy, quickly and with pleasure.

  • websmith - A Domain Specific Language (DSL) for Web Testing.

  • pages - lightweight page object and component Python library for UI tests.

  • Golem - Golem is a complete test automation tool and framework for end-to-end testing. It creates powerful, robust and maintainable test suites, it's easy to learn even without a lot of programming knowledge. It is based on Selenium Webdriver and it can be extended using Python

  • - Pylenium brings the best of Selenium, Cypress and Python into one package.

  • Mailosaur - Python client for email testing/automation via Mailosaur.

Rest API Automation Frameworks: