QIT is a testing platform for WordPress Plugins and Themes developed by WooCommerce, designed to simplify and streamline your testing process. We are currently in closed beta operating only in the Woo Marketplace.
Run tests out-of-the box with zero configuration.
- Woo E2E Test - Runs WooCommerce End-to-End tests alongside your extension.
- Woo API Test - Runs WooCommerce API tests with your extension.
- Activation Test - Activates your plugin and logs any PHP notice, warning, and error.
- Security Test - Scan your plugin for adherence to best practices in writing secure code.
- PHPStan Test - Run PHPStan checks to catch issues early.
- PHP Compatibility Test - Run PHPCompatibility tests to detect issues with different PHP versions.
- Malware Test - Scan your code with the Malware check.
- Performance Tests (Work-in-progress)
Write your own E2E tests using frameworks such as Playwright, or leverage pre-built tests to effortlessly increase your test coverage.
Read more about Custom E2E Tests.
Fast, disposable and configurable test environment designed to do one thing well: Run tests.
Our Alpine-based Docker images are perfect for CI systems, while also offering native ARM64 support for Apple Silicon and optimized Docker volumes for faster performance on Mac, Linux, and Windows WSL for local tests.
Read more about the Local Test Environment.
- Configurable Environment: Configurable PHP, WordPress, WooCommerce versions, and more.
- In-Depth Analysis: Tracks all PHP notices, warnings, and errors during testing.
- Development & Published Versions: Test with both development and published versions of your plugins.
- GitHub Integration: Integrate QIT into your PR reviews with GitHub Actions.
- Test Reports: Detailed test reports to help you understand the results.
- Notifications: Stay informed with test result notifications.
For more detailed information on QIT and how to use it, refer to the documentation.
- Run
composer require woocommerce/qit-cli --dev
- Execute
./vendor/bin/qit
to authenticate with your WooCommerce.com Partner Developer account.
You can use these parameters individually or in combination to create different scenarios for your tests. Run qit run:<test-type> --help
to see all the available options. Different test types will have different options to choose from.
Most features of QIT requires you to log-in as a Partner Developer of the WooCommerce.com Marketplace, but we have plans to open it to all developers in the future.
The QIT Local Test Environment does not require you to be connected to WooCommerce.com, although to install WooCommerce.com Premium plugins and themes on your test environment you will need to be connected as a Partner Developer of the Woo.com Marketplace (and have access to the extensions you want to test).
If you need help with QIT, open an issue on this GitHub repository.