An Ember CLI addon for running tests with randomization, splitting, parallelization, and load balancing.
Ember Exam is an Ember CLI addon that extends the standard test command to provide advanced test execution features. It helps improve test reliability and performance by enabling randomization to detect order-dependent tests, splitting test suites across partitions, and parallelizing execution across multiple browsers. The addon is designed to reduce flaky tests and promote healthy test-driven development.
Ember.js developers using ember-qunit for testing, particularly those with large test suites or teams running tests in CI/CD pipelines. It is suited for developers needing to identify non-atomic tests, distribute test execution, or optimize test run times.
Developers choose Ember Exam over the default Ember CLI test runner for its fine-grained control over test execution, including features like load balancing for performance, test failure reproduction for debugging, and iterative randomization to uncover intermittent issues. Its seamless integration as a drop-in replacement for 'ember test' makes it a robust tool for maintaining test suite integrity.
Run your tests with randomization, splitting, and parallelization for beautiful tests.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Randomizes test order with optional seed reproducibility to identify order-dependent tests, as shown in the randomization and iteration features for debugging intermittent failures.
Splits test suites across partitions and parallelizes execution using Testem, reducing run times in continuous integration pipelines, with load balancing for dynamic distribution across browsers.
Records execution details to exactly replay failed runs via --write-execution-file, aiding in debugging by reproducing specific browser and partition conditions.
Acts as a drop-in replacement for 'ember test' with minimal configuration changes, allowing teams to adopt advanced features without overhauling their test workflow.
Requires specific versions of Ember.js (v4.8+), Ember CLI (v4.8+), and Node.js (v18+), excluding older or non-standard Ember projects.
Necessitates modifications to test-helper.js and additional configuration for integration with tools like Vite, adding initial overhead compared to the default test runner.
Only compatible with ember-qunit, lacking support for other Ember testing frameworks like ember-mocha, which restricts its use in diverse test environments.
Key features like load balancing and test failure reproduction only function in CI mode and require specific Testem setups, limiting utility for local development or simple deployments.