Commit graph

14 commits

Author SHA1 Message Date
79be23813e
Improve CI/CD stability for frontend integration tests
Address browser testing reliability in CI environments:

## CI/CD Improvements
- **ChromeDriver**: Use latest stable version instead of pinned version for better compatibility
- **Timeouts**: Add 10-minute timeout for integration tests to prevent CI hangs
- **Environment Variables**: Configure WALLABY_MAX_WAIT_TIME for CI-specific timeouts

## Wallaby Configuration Enhancements
- **Chrome Args**: Add CI-stable Chrome options (--no-sandbox, --disable-dev-shm-usage)
- **Window Size**: Set consistent 1280x720 window size for reproducible tests
- **Dynamic Timeouts**: Environment-configurable max wait time with sensible defaults
- **Pool Size**: Limit to single browser instance to prevent resource conflicts

## Benefits
-  More reliable test execution in CI environments
-  Better error handling and timeout management
-  Consistent browser behavior across environments
-  Reduced flakiness from resource constraints

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-29 12:26:35 -05:00
9a63c9ed63
Add comprehensive frontend integration tests with Wallaby
This commit implements browser-based integration testing for the Phoenix LiveView
application using Wallaby and ChromeDriver to test the complete user experience
including JavaScript interactions.

## Changes Made

### Testing Infrastructure
- Add Wallaby dependency for browser automation testing
- Configure Chrome driver with headless mode for CI/CD
- Set up Phoenix server integration for test environment
- Enable screenshot capture on test failures

### Integration Tests
- `test/integration/simple_integration_test.exs` - Basic homepage functionality
- `test/integration/map_integration_test.exs` - Map interface and routing tests
- Tests validate page loading, content rendering, and navigation

### CI/CD Integration
- Update GitHub Actions workflow to install ChromeDriver
- Add separate integration test step in CI pipeline
- Configure headless Chrome for automated testing

### Configuration Updates
- Enable Phoenix server in test environment for Wallaby
- Configure Wallaby with proper base URL and screenshot settings
- Initialize Wallaby application in test helper

## Features Tested
-  Homepage loads with APRS content
-  Main page structure renders correctly
-  Route navigation functions properly
-  Basic Phoenix LiveView functionality

## Next Steps
This provides a solid foundation for expanding to test:
- Interactive map controls and JavaScript functionality
- Real-time packet updates via LiveView PubSub
- User authentication flows and form submissions
- Mobile responsive behavior

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-29 12:21:53 -05:00
711d92ebb6
performance improvements 2025-07-08 10:03:52 -05:00
5ad101a69e
passing tests 2025-07-07 16:29:38 -05:00
ce7c50caa1
refactor to use external parser 2025-06-24 14:22:09 -05:00
Fly Dev
1dcb2d8a02 remove remaining unused helper function 2025-06-23 14:26:32 +00:00
Fly Dev
43f40d058d remove unused helper functions 2025-06-23 14:26:08 +00:00
Fly Dev
9fb25147b5 fix mocking issues and remove unused import 2025-06-23 14:25:51 +00:00
Fly Dev
2af3d8549a fix duplicate functions and mocking in historical_packets_test 2025-06-23 14:23:18 +00:00
Fly Dev
9f4369771d add missing expect helper functions to historical_packets_test 2025-06-23 14:22:15 +00:00
e7214f5064
misc fixes 2025-06-22 17:11:58 -05:00
81a9263b9f
faster tests 2025-06-22 10:58:30 -05:00
a05ec4b32c
refactoring 2025-06-22 10:49:35 -05:00
d6ac5cccfc
fixes 2025-06-21 12:26:43 -05:00