This project has intentionally disabled system tests for the following reasons:
- The project uses Lexxy for rich text editing instead of Rails' default Trix editor
- System tests had difficulty interacting with Lexxy's JavaScript components
- Form submissions would fail intermittently due to editor initialization timing
- System tests failed when run in parallel with other tests
- Chrome browser instances would conflict during concurrent execution
- Tests would pass individually but fail in CI/CD pipeline
- System tests significantly slowed down the build pipeline
- Browser automation added ~60% to test execution time
- The project maintains excellent coverage through unit and integration tests
The project maintains comprehensive test coverage through:
- 237 unit and integration tests with 673 assertions
- 100% passing test suite
- Controller tests for all user interactions
- Model tests for business logic
- Integration tests for complete request flows
To prevent accidental re-introduction of system tests:
# config/application.rb
config.generators do |g|
g.system_tests false
endrake test:system
# => Shows helpful error message and exitscapybaraandselenium-webdrivergems removed- System test directory (
test/system/) deleted - CI workflows updated to exclude system test jobs
Before re-enabling system tests, please:
- Discuss with the team - Understand why they were removed
- Address Lexxy compatibility - Ensure form interactions work reliably
- Fix parallel execution - Tests must pass in CI environment
- Consider alternatives - Can the functionality be tested with integration tests?
# All tests (recommended)
bin/rails test
# Specific test types
bin/rails test test/models/ # Model tests
bin/rails test test/controllers/ # Controller tests
bin/rails test test/integration/ # Integration tests
# Single test file
bin/rails test test/models/postable_test.rbIf you have questions about this decision or need help with testing strategies, please:
- Check the git history for context on the removal
- Review existing integration tests for patterns
- Reach out to the development team
Last updated: December 2024
Decision made by: Development Team
Status: Active - Do not re-enable without team discussion