--- id: marionette-harness version: "5.0.0" license: Mozilla Public License 2.0 (MPL 2.0) license_treatment: copyleft maintenance: abandoned --- # marionette-harness — Marionette test automation harness License: copyleft · Maintenance: abandoned · Downloads: 118.4K/mo ## What it is and what it does Marionette-harness is a test automation framework for Gecko-based browsers, primarily Firefox. It provides a Python test runner and unittest-based testcase classes that let you write automated tests controlling the browser's UI, chrome, content, and DOM. The package wraps the Marionette protocol, which allows remote control of Firefox for both user-action replication and property inspection. The tool is invoked from the command line with a manifest file, test file, or test folder, and runs tests against a specified Firefox binary. It is part of Mozilla's QA infrastructure and was designed for testing Gecko applications at scale. However, the package has been abandoned since October 2019 with no updates for over 2500 days, making it a legacy tool that may not work reliably with modern Firefox or Python versions. Use it for: - Automated testing of Firefox UI and browser chrome behavior in CI/CD pipelines. - Regression testing of Gecko-based applications by simulating user interactions and verifying DOM state. - Integration testing of web content within Firefox, including JavaScript execution and property inspection. - Legacy test suite maintenance for projects that already depend on Marionette test infrastructure. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Marionette-harness is a test runner for automating Gecko-based applications like Firefox, allowing you to write and execute Python-based tests that control the browser UI, JavaScript, and DOM. No. The package is abandoned (last release October 2019, no updates in 2500+ days) and relies on 15 Mozilla-ecosystem dependencies that are likely also unmaintained. Modern Firefox automation should use Selenium, Playwright, or Puppeteer instead. Install only if maintaining an existing legacy test suite with no alternative path. ## Install pip install marionette-harness uv add marionette-harness poetry add marionette-harness ## Installing marionette-harness Before you install: Low install friction with a pure-Python wheel, but the package is abandoned as of 2019 with no updates in over 2500 days. Relies on 15 Mozilla-ecosystem dependencies, most of which may also be unmaintained. License in practice: Licensed under Mozilla Public License 2.0 (MPL 2.0), a copyleft license requiring derivative works to disclose source and maintain the same license. Review your project's licensing compatibility before use. Quickstart: pip install marionette-harness marionette --binary /path/to/firefox test_file.py Requires a local Firefox binary and the Marionette protocol to be enabled; depends on Mozilla's ecosystem of moz* packages which may have compatibility issues with modern Firefox versions. Verify before relying: - Whether this package works with current Firefox versions, given its 2019 abandonment date. - Current compatibility of the 15 moz* dependencies with modern Python and OS versions. - Whether the unittest-based test classes remain functional with modern Python test frameworks. ## Package facts - License: Mozilla Public License 2.0 (MPL 2.0) (copyleft) - Python support: unspecified - Install friction: low - Maintenance: abandoned - Downloads: 118.4K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags firefox automation testing, gecko browser test runner, marionette test harness, python browser automation, firefox ui testing framework, gecko application testing, automated browser control, firefox-automation, abandoned-package, legacy-testing [View on SkillFed](https://skillfed.io/packages/marionette-harness) · [View on PyPI](https://pypi.org/project/marionette-harness/)