Licensing E2E Testing Frameworks
18 Nov 2025
Table of Contents
If you’re in an enterprise setting, you might need to ask for permission, not forgiveness, when it comes to importing third-party programming language libraries and software development kits (SDKs) into your codebases.
If you’re starting a browser-based end-to-end (“E2E”) test automation journey, you might not care which of the big six libraries you use (Playwright, Puppeteer, Selenium, Cypress, Appium, WebDriverIO), so long as the whole company is already approved to import it as a dependency.
Below is some easy-to-copy-and-paste content, so that you can open a tidy helpdesk ticket or send an email asking if anything is already approved for use at your workplace.
List form
- (click expander icon at left – it’s a rightward-facing triangle – if the list below is not showing up)
- Microsoft’s Playwright, for Java, Apache 2.0 license:
https://github.com/microsoft/playwright-java/blob/main/LICENSE - Microsoft’s Playwright, for JavaScript/NodeJS, Apache 2.0 license:
https://github.com/microsoft/playwright/blob/main/LICENSE - Microsoft’s Playwright, for .NET/C#, MIT license:
https://github.com/microsoft/playwright-dotnet/blob/main/LICENSE - Microsoft’s Playwright, for Python, Apache 2.0 license:
https://github.com/microsoft/playwright-python/blob/main/LICENSE - Google’s Puppeteer, for JavaScript/NodeJS, Apache 2.0 license:
https://github.com/puppeteer/puppeteer/blob/main/LICENSE - Selenium Project’s Selenium, for .NET/C# + Java + JavaScript/NodeJS + Python + Ruby (all 5 languages supported via one codebase), Apache 2.0 license:
https://github.com/SeleniumHQ/selenium/blob/trunk/LICENSE - Cypress.io’s Cypress, for JavaScript/NodeJS, MIT license:
https://github.com/cypress-io/cypress/blob/develop/LICENSE - OpenJS Foundation’s Appium, for Java, Apache 2.0 license:
https://github.com/appium/java-client/blob/master/LICENSE - OpenJS Foundation’s Appium, for JavaScript/NodeJS, Apache 2.0 license:
https://github.com/appium/appium/blob/master/LICENSE - OpenJS Foundation’s Appium, for .NET/C#, Apache 2.0 license:
https://github.com/appium/dotnet-client/blob/main/LICENSE - OpenJS Foundation’s Appium, for Python, Apache 2.0 license:
https://github.com/appium/python-client/blob/master/LICENSE - OpenJS Foundation’s Appium, for Ruby, Apache 2.0 license:
https://github.com/appium/ruby_lib_core/blob/master/LICENSE.txt - OpenJS Foundation’s WebDriverIO, for JavaScript/NodeJS, MIT license:
https://github.com/webdriverio/webdriverio/blob/main/LICENSE
Table form
- (click expander icon at left – it’s a rightward-facing triangle – if the table below is not showing up)
| Author | SDK Name | Supported Programming Language | Cost | License Type | URL |
|---|---|---|---|---|---|
| Microsoft | Playwright | Java | $0 | Apache 2.0 | https://github.com/microsoft/playwright-java/blob/main/LICENSE |
| Microsoft | Playwright | JavaScript/NodeJS | $0 | Apache 2.0 | https://github.com/microsoft/playwright/blob/main/LICENSE |
| Microsoft | Playwright | .NET/C# | $0 | MIT | https://github.com/microsoft/playwright-dotnet/blob/main/LICENSE |
| Microsoft | Playwright | Python | $0 | Apache 2.0 | https://github.com/microsoft/playwright-python/blob/main/LICENSE |
| Puppeteer | JavaScript/NodeJS | $0 | Apache 2.0 | https://github.com/puppeteer/puppeteer/blob/main/LICENSE |
|
| Selenium Project | Selenium | .NET/C#, Java, JavaScript/NodeJS, Python, Ruby (all 5 languages supported via one codebase) |
$0 | Apache 2.0 | https://github.com/SeleniumHQ/selenium/blob/trunk/LICENSE |
| Cypress.io | Cypress | JavaScript/NodeJS | $0 | MIT | https://github.com/cypress-io/cypress/blob/develop/LICENSE |
| OpenJS Foundation | Appium | Java | $0 | Apache 2.0 | https://github.com/appium/java-client/blob/master/LICENSE |
| OpenJS Foundation | Appium | JavaScript/NodeJS | $0 | Apache 2.0 | https://github.com/appium/appium/blob/master/LICENSE |
| OpenJS Foundation | Appium | .NET/C# | $0 | Apache 2.0 | https://github.com/appium/dotnet-client/blob/main/LICENSE |
| OpenJS Foundation | Appium | Python | $0 | Apache 2.0 | https://github.com/appium/python-client/blob/master/LICENSE |
| OpenJS Foundation | Appium | Ruby | $0 | Apache 2.0 | https://github.com/appium/ruby_lib_core/blob/master/LICENSE.txt |
| OpenJS Foundation | WebDriverIO | JavaScript/NodeJS | $0 | MIT | https://github.com/webdriverio/webdriverio/blob/main/LICENSE |
WCAG regression testing
I suppose while you’re at it, you might want to check in on these “Axe-Core” SDKs made by Deque, for automated regression testing against WCAG rules. After all, they integrate quite nicely into general-purpose browser-based E2E testing SDKs such as the ones above. Here’s a list for them, too:
List form
- (click expander icon at left – it’s a rightward-facing triangle – if the list below is not showing up)
- Deque’s axe-core-maven-html, for Java, MPL 2.0 license:
https://github.com/dequelabs/axe-core-maven-html/blob/develop/LICENSE - Deque’s axe-core, for JavaScript/NodeJS, MPL 2.0 license:
https://github.com/dequelabs/axe-core/blob/develop/LICENSE - Deque’s axe-core-npm, for JavaScript/NodeJS, MPL 2.0 license:
https://github.com/dequelabs/axe-core-npm/blob/develop/LICENSE - Deque’s axe-core-nuget: “Commons”, for .NET/C#, MPL 2.0 license:
https://github.com/dequelabs/axe-core-nuget/blob/develop/LICENSE-Deque.AxeCore.Commons.txt - Deque’s axe-core-nuget: “Playwright”, for .NET/C#, MIT license:
https://github.com/dequelabs/axe-core-nuget/blob/develop/LICENSE-Deque.AxeCore.Playwright.txt - Deque’s axe-core-nuget: “Selenium”, for .NET/C#, MIT license:
https://github.com/dequelabs/axe-core-nuget/blob/develop/LICENSE-Deque.AxeCore.Selenium.txt - Deque’s axe-core-gems, for Ruby, MPL 2.0 license:
https://github.com/dequelabs/axe-core-gems/blob/develop/LICENSE
Table form
- (click expander icon at left – it’s a rightward-facing triangle – if the table below is not showing up)
| Author | SDK Name | Supported Programming Language | Cost | License Type | URL |
|---|---|---|---|---|---|
| Deque | axe-core-maven-html | Java | $0 | MPL 2.0 | https://github.com/dequelabs/axe-core-maven-html/blob/develop/LICENSE |
| Deque | axe-core | JavaScript/NodeJS | $0 | MPL 2.0 | https://github.com/dequelabs/axe-core/blob/develop/LICENSE |
| Deque | axe-core-npm | JavaScript/NodeJS | $0 | MPL 2.0 | https://github.com/dequelabs/axe-core-npm/blob/develop/LICENSE |
| Deque | axe-core-nuget: “Commons” | .NET/C# | $0 | MPL 2.0 | https://github.com/dequelabs/axe-core-nuget/blob/develop/LICENSE-Deque.AxeCore.Commons.txt |
| Deque | axe-core-nuget: “Playwright” | .NET/C# | $0 | MIT | https://github.com/dequelabs/axe-core-nuget/blob/develop/LICENSE-Deque.AxeCore.Playwright.txt |
| Deque | axe-core-nuget: “Selenium” | .NET/C# | $0 | MIT | https://github.com/dequelabs/axe-core-nuget/blob/develop/LICENSE-Deque.AxeCore.Selenium.txt |
| Deque | axe-core-gems | Ruby | $0 | MPL 2.0 | https://github.com/dequelabs/axe-core-gems/blob/develop/LICENSE |