License & Deployment Mix: 16 tools – 12 OSS, 5 SaaS. (OSS and SaaS counts can overlap when an open-source tool also ships a vendor-hosted edition.)

What Is Test Automation Software?

Test automation software covers the frameworks and platforms that run software behaviour as repeatable, machine-checkable tests instead of manual click-throughs. This category spans several layers:

  • Behaviour-Driven Development (BDD) frameworks – run plain-language Gherkin .feature files (Feature / Scenario / Given / When / Then) as executable acceptance tests, mapping each step to a step definition in code (e.g. Cucumber, godog, pytest-bdd, Behat)
  • Browser / end-to-end (E2E) frameworks – drive a real browser to verify a web app from the user’s point of view (e.g. Selenium, Playwright, Cypress, WebdriverIO, Nightwatch.js)
  • Keyword-driven acceptance frameworks – generic, table-driven test syntax with pluggable libraries for web, API, and mobile (Robot Framework)
  • Mobile app automation – native / hybrid / mobile-web testing on iOS and Android over the WebDriver protocol (Appium)
  • Cloud test grids & studios – commercial platforms that host browsers and real devices at scale, or provide a low-code authoring studio, for the OSS frameworks to run against (BrowserStack, Sauce Labs, LambdaTest, Katalon)

Gherkin is a language, not a tool

A recurring point of confusion: Gherkin is a language – a business-readable syntax for describing behaviour. Cucumber is the tool that reads .feature files and executes them. Gherkin came out of the Cucumber project but is now implemented by a runner per language:

LanguageRunnerNote
GogodogOfficial Cucumber for Go
JS/TSCucumber.jsReference implementation
JavaCucumber-JVM
Pythonpytest-bdd, behavepytest-bdd reuses the pytest ecosystem
PHPBehatUsually paired with Mink for web
PerlTest::BDD::Cucumber (pherkin)Feature-complete; on CPAN
RakuGherkin::Grammar; Cucumis SextusParser + a WIP runner

.NET is out of scope for this evaluation, so the .NET Gherkin runners (SpecFlow / its successor Reqnroll) are not covered here.

BDD frameworks and browser frameworks are complementary, not competing: a Gherkin runner (Cucumber / godog) supplies the acceptance layer, and a browser driver (Selenium / Playwright) is what a web step definition actually calls.

The information on these pages was researched by a combination of human review and large language models. To suggest an addition or correction, please contact us. Prepared by Rhodium Systems Inc., author of the ResorsIT platform — a unified IT operations management platform for IT teams and MSPs that integrates a curated suite of open-source, commercial, and SaaS applications into a single system with shared identity, single sign-on, access control, and a common audit trail. Use this catalogue only as a starting point for your own research, and review any tool carefully against your own requirements before relying on it. Catalogue data version 2026.197.

Comparison


Tool Categories

Tools are organised by primary role. BDD runners supply the acceptance layer; browser frameworks are what a web step definition drives; the cloud platforms host execution at scale.

RoleTools
BDD / Gherkin runnersCucumber, godog, pytest-bdd, Behat, Test::BDD::Cucumber
Browser / E2ESelenium, Playwright, Cypress, WebdriverIO, Nightwatch.js
Keyword-drivenRobot Framework
Mobile automationAppium
Cloud grids / studiosBrowserStack, Sauce Labs, LambdaTest, Katalon Studio

Feature Matrix – BDD / Gherkin Runners

FeatureCucumbergodogpytest-bddBehatTest::BDD::Cucumber
Gherkin .featureYesYesYesYesYes
Scenario OutlineYesYesYesYesYes
Tags / filteringYesYesYesYesYes
HooksYesYesVia pytestYesYes
Data tablesYesYesYesYesYes
Parallel execYesYesVia pytestYesLimited
JUnit XML outYesYesYesYesVia harness
Cucumber JSONYesYesYesYesYes
Primary languageMultiGoPythonPHPPerl

Feature Matrix – Browser / E2E Frameworks

FeatureSeleniumPlaywrightCypressWebdriverIONightwatch
ChromiumYesYesYesYesYes
FirefoxYesYesYesYesYes
WebKit / SafariYesYesExpYesYes
Auto-waitingNoYesYesPartialPartial
Network interceptNoYesYesYesLimited
Parallel / shardGridYesCloudYesYes
Cucumber/BDD adapterVia libVia libPluginOfficialPlugin
Mobile webVia gridYesNoYesVia grid
RuntimeMultiMultiNodeNodeNode

Coverage Matrix – Layer & Target

ToolWeb UIAPIMobileBDD-nativeRuntime
CucumberVia driverYesVia driverYesMulti
godogVia driverYesVia driverYesGo
pytest-bddVia driverYesVia driverYesPython
BehatVia MinkYesNoYesPHP
Test::BDD::CucumberVia driverYesNoYesPerl
SeleniumYesNoVia gridNoMulti
PlaywrightYesYesYesNoMulti
CypressYesYesNoNoNode
WebdriverIOYesNoYesAdapterNode
Nightwatch.jsYesYesVia gridNoNode
Robot FrameworkVia libVia libVia libKeywordPython
AppiumMobile webNoYesNoNode

SSO / OIDC Comparison

The OSS frameworks have no account system, so SSO applies only to the commercial platforms. The Authentik notes below assume an OIDC/SAML identity provider fronting the tool.

ToolOIDCSAMLSCIMAuthentik Notes
CucumberN/AN/AN/ACLI framework; tests Authentik-guarded apps
godogN/AN/AN/ACLI framework; no SSO
pytest-bddN/AN/AN/ALibrary; no SSO
BehatN/AN/AN/ALibrary; no SSO
Test::BDD::CucumberN/AN/AN/ACLI framework; no SSO
SeleniumN/AN/AN/ALibrary; no SSO
PlaywrightN/AN/AN/ALibrary; no SSO
CypressCloudCloudNoCypress Cloud SSO on paid tiers
WebdriverION/AN/AN/ALibrary; no SSO
Nightwatch.jsN/AN/AN/ALibrary; no SSO
Robot FrameworkN/AN/AN/ALibrary; no SSO
AppiumN/AN/AN/AServer; no SSO
BrowserStackEntEntEntSAML/OIDC on enterprise tier
Sauce LabsEntEntEntSAML/OIDC on enterprise tier
LambdaTestEntEntEntSAML/OIDC on enterprise tier
KatalonEntEntNoTestOps SSO on enterprise tier

Ent = Enterprise / business tier required N/A = not applicable (local / CLI / library tool)


Deployment Comparison

ToolTypeLocalSelf-HostedSaaSDocker
CucumberLibraryYesN/ANoYes
godogLibraryYesN/ANoYes
pytest-bddLibraryYesN/ANoYes
BehatLibraryYesN/ANoYes
Test::BDD::CucumberCLIYesN/ANoYes
SeleniumLibrary/GridYesGridNoYes
PlaywrightLibraryYesN/ANoYes
CypressLibraryYesN/ACloudYes
WebdriverIOLibraryYesN/ANoYes
Nightwatch.jsLibraryYesN/ANoYes
Robot FrameworkLibraryYesN/ANoYes
AppiumServerYesYesNoYes
BrowserStackSaaSNoNoYesN/A
Sauce LabsSaaSNoNoYesN/A
LambdaTestSaaSNoNoYesN/A
KatalonDesktop+SaaSYesNoTestOpsNo

Grid = Selenium Grid can be self-hosted for distributed runs Cloud = optional Cypress Cloud SaaS for parallelisation / analytics TestOps = Katalon TestOps SaaS for orchestration / reporting


Licensing Comparison

ToolLicenseTypeNotes
CucumberMITOpen sourceMulti-language project
godogMITOpen sourceOfficial Cucumber for Go
pytest-bddMITOpen sourcepytest plugin
BehatMITOpen sourcePHP
Test::BDD::CucumberArtistic/GPLOpen sourceSame terms as Perl
SeleniumApache-2.0Open sourceW3C WebDriver baseline
PlaywrightApache-2.0Open sourceMicrosoft-maintained
CypressMITOpen sourceCloud is proprietary SaaS
WebdriverIOMITOpen sourceLarge plugin ecosystem
Nightwatch.jsMITOpen sourceNode.js
Robot FrameworkApache-2.0Open sourceKeyword-driven
AppiumApache-2.0Open sourceMobile automation
BrowserStackProprietaryCommercial SaaSData egress off-prem
Sauce LabsProprietaryCommercial SaaSData egress off-prem
LambdaTestProprietaryCommercial SaaSData egress off-prem
KatalonProprietaryCommercialFree + paid tiers

Suitability Summary

  1. Cucumber / godog / pytest-bdd / Behat – match the runner to the customer’s language so acceptance criteria stay readable and executable
  2. Playwright or Cypress – E2E coverage for customer web apps
  3. Robot Framework – for teams that prefer keyword-driven, low-code tests
  4. BrowserStack / Sauce Labs / LambdaTest – only where the customer needs real-device / broad-browser coverage and accepts a SaaS dependency

Caveats

  • BDD only checks what someone thought to specify – Gherkin acceptance tests are one gauge, not the whole gauntlet. Pair them with unit tests, mutation testing, and human review for security-sensitive paths.
  • Runtime cost – Playwright / Cypress / WebdriverIO / Nightwatch add a Node.js toolchain; Robot Framework / pytest-bdd add Python; Cucumber-JVM adds a JVM. godog is the only runner with no extra runtime for the Go core.
  • SaaS grids send test traffic off-premises – a real consideration for a self-host-first, privacy-conscious platform; prefer a self-hosted Selenium Grid where coverage allows.

Tools

16 tools.

Appium

Appium is an open-source cross-platform mobile app automation server driving native, hybrid, and mobile-web apps on iOS and Android via the WebDriver protocol.

License: Apache-2.0 (OSS) · Kind: service · Deploy: package, docker · SSO: none

Website · Source

Behat

Behat is the PHP implementation of Cucumber-style BDD, executing Gherkin .feature files as acceptance tests, commonly paired with Mink for web testing.

License: MIT (OSS) · Kind: library · Deploy: package · SSO: none

Website · Source

BrowserStack

BrowserStack is a commercial cloud testing platform providing on-demand real browsers and mobile devices for running Selenium, Playwright, Cypress, and Appium tests at scale.

License: Proprietary (proprietary) · Kind: service · Deploy: saas · SSO: OIDC, SAML

Website

Cucumber

Cucumber is the open-source Behavior-Driven Development framework that executes plain-language Gherkin (.feature) specs as automated acceptance tests via step definitions.

License: MIT (OSS) · Kind: library · Deploy: package · SSO: none

Website · Source

Cypress

Cypress is an open-source JavaScript end-to-end test framework running in the browser, with an optional Cypress Cloud SaaS for parallelization, recording, and analytics.

License: MIT (OSS) · Kind: hybrid · Deploy: package, saas · SSO: SAML

Website · Source

godog

godog is the official Cucumber BDD framework for Go, running Gherkin .feature files as executable acceptance tests wired to Go step definitions.

License: MIT (OSS) · Kind: library · Deploy: package · SSO: none

Website · Source

Katalon Studio

Katalon Studio is a commercial low-code test automation IDE built on Selenium and Appium for web, API, and mobile testing, paired with the Katalon TestOps SaaS.

License: Proprietary (proprietary) · Kind: desktop · Deploy: package, saas · SSO: OIDC, SAML

Website

LambdaTest

LambdaTest is a commercial cloud test-execution platform offering cross-browser and real-device grids for Selenium, Playwright, Cypress, and Appium test suites.

License: Proprietary (proprietary) · Kind: service · Deploy: saas · SSO: OIDC, SAML

Website

Nightwatch.js

Nightwatch.js is an open-source Node.js end-to-end test framework built on the W3C WebDriver protocol, bundling a test runner, assertions, and page-object support.

License: MIT (OSS) · Kind: library · Deploy: package · SSO: none

Website · Source

Playwright

Playwright is Microsoft’s open-source end-to-end web testing framework with auto-waiting, cross-browser support (Chromium, Firefox, WebKit), and multi-language bindings.

License: Apache-2.0 (OSS) · Kind: library · Deploy: package, docker · SSO: none

Website · Source

pytest-bdd

pytest-bdd is a BDD plugin for pytest that runs Gherkin .feature files as pytest tests, reusing pytest fixtures, plugins, and reporting.

License: MIT (OSS) · Kind: library · Deploy: package · SSO: none

Website · Source

Robot Framework

Robot Framework is an open-source, keyword-driven acceptance test automation framework in Python, with plain-text test data and libraries for web, API, and mobile.

License: Apache-2.0 (OSS) · Kind: library · Deploy: package · SSO: none

Website · Source

Sauce Labs

Sauce Labs is a commercial continuous-testing cloud offering real and virtual browsers and mobile devices for running automated Selenium, Appium, and Playwright tests.

License: Proprietary (proprietary) · Kind: service · Deploy: saas · SSO: OIDC, SAML

Website

Selenium

Selenium is the long-standing open-source browser automation suite (WebDriver, Grid, IDE) for cross-browser end-to-end test automation across many languages.

License: Apache-2.0 (OSS) · Kind: library · Deploy: package, docker · SSO: none

Website · Source

Test::BDD::Cucumber

Test::BDD::Cucumber is a feature-complete Perl implementation of Cucumber-style BDD on CPAN, shipping the pherkin CLI and integrating with Test2 and prove.

License: Artistic-1.0-Perl OR GPL-1.0-or-later (OSS) · Kind: cli · Deploy: package · SSO: none

Website · Source

WebdriverIO

WebdriverIO is an open-source Node.js browser and mobile automation framework built on the WebDriver protocol, with a large plugin ecosystem and a Cucumber BDD adapter.

License: MIT (OSS) · Kind: library · Deploy: package · SSO: none

Website · Source

ResorsIT Tools Catalog Search