mirror of
https://github.com/mwisnowski/mtg_python_deckbuilder.git
synced 2025-12-26 04:18:47 +01:00
feat: complete M3 Web UI Enhancement milestone with include/exclude cards, fuzzy matching, mobile responsive design, and performance optimization
- Include/exclude cards feature complete with 300+ card knowledge base and intelligent fuzzy matching - Enhanced visual validation with warning icons and performance benchmarks (100% pass rate) - Mobile responsive design with bottom-floating controls, two-column layout, and horizontal scroll prevention - Dark theme confirmation modal for fuzzy matches with card preview and alternatives - Dual architecture support for web UI staging system and CLI direct build paths - All M3 checklist items completed: fuzzy match modal, enhanced algorithm, summary panel, mobile responsive, Playwright tests
This commit is contained in:
parent
0516260304
commit
cfcc01db85
37 changed files with 3837 additions and 162 deletions
74
tests/e2e/README.md
Normal file
74
tests/e2e/README.md
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
# End-to-End Testing (M3: Cypress/Playwright Smoke Tests)
|
||||
|
||||
This directory contains end-to-end tests for the MTG Deckbuilder web UI using Playwright.
|
||||
|
||||
## Setup
|
||||
|
||||
1. Install dependencies:
|
||||
```bash
|
||||
pip install -r tests/e2e/requirements.txt
|
||||
```
|
||||
|
||||
2. Install Playwright browsers:
|
||||
```bash
|
||||
python tests/e2e/run_e2e_tests.py --install-browsers
|
||||
```
|
||||
|
||||
## Running Tests
|
||||
|
||||
### Quick Smoke Test (Recommended)
|
||||
```bash
|
||||
# Assumes server is already running on localhost:8000
|
||||
python tests/e2e/run_e2e_tests.py --quick
|
||||
```
|
||||
|
||||
### Full Test Suite with Server
|
||||
```bash
|
||||
# Starts server automatically and runs all tests
|
||||
python tests/e2e/run_e2e_tests.py --start-server --smoke
|
||||
```
|
||||
|
||||
### Mobile Responsive Tests
|
||||
```bash
|
||||
python tests/e2e/run_e2e_tests.py --mobile
|
||||
```
|
||||
|
||||
### Using pytest directly
|
||||
```bash
|
||||
cd tests/e2e
|
||||
pytest test_web_smoke.py -v
|
||||
```
|
||||
|
||||
## Test Types
|
||||
|
||||
- **Smoke Tests**: Basic functionality tests (homepage, build page, modal opening)
|
||||
- **Mobile Tests**: Mobile responsive layout tests
|
||||
- **Full Tests**: Comprehensive end-to-end user flows
|
||||
|
||||
## Environment Variables
|
||||
|
||||
- `TEST_BASE_URL`: Base URL for testing (default: http://localhost:8000)
|
||||
|
||||
## Test Coverage
|
||||
|
||||
The smoke tests cover:
|
||||
- ✅ Homepage loading
|
||||
- ✅ Build page loading
|
||||
- ✅ New deck modal opening
|
||||
- ✅ Commander search functionality
|
||||
- ✅ Include/exclude fields presence
|
||||
- ✅ Include/exclude validation
|
||||
- ✅ Fuzzy matching modal triggering
|
||||
- ✅ Mobile responsive layout
|
||||
- ✅ Configs page loading
|
||||
|
||||
## M3 Completion
|
||||
|
||||
This completes the M3 Web UI Enhancement milestone requirement for "Cypress/Playwright smoke tests for full workflow". The test suite provides:
|
||||
|
||||
1. **Comprehensive Coverage**: Tests all major user flows
|
||||
2. **Mobile Testing**: Validates responsive design
|
||||
3. **Fuzzy Matching**: Tests the enhanced fuzzy match confirmation modal
|
||||
4. **Include/Exclude**: Validates the include/exclude functionality
|
||||
5. **Easy Execution**: Simple command-line interface for running tests
|
||||
6. **CI/CD Ready**: Can be integrated into continuous integration pipelines
|
||||
Loading…
Add table
Add a link
Reference in a new issue