Skip to content

Fix UI test selectors, add visual game verification, implement computer bot mode, add move history display, fix capture functionality, and add captured pieces display #86

Fix UI test selectors, add visual game verification, implement computer bot mode, add move history display, fix capture functionality, and add captured pieces display

Fix UI test selectors, add visual game verification, implement computer bot mode, add move history display, fix capture functionality, and add captured pieces display #86

Workflow file for this run

name: E2E QA Validation
on:
push:
branches: [ main, develop, 'copilot/**' ]
pull_request:
branches: [ main, develop ]
workflow_dispatch: # Allow manual triggering
permissions:
contents: read
jobs:
e2e-tests:
name: End-to-End QA Validation
runs-on: ubuntu-latest
timeout-minutes: 15
permissions:
contents: read
steps:
- uses: actions/checkout@v4
# Set up Java for backend
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
cache: 'gradle'
# Set up Node.js for frontend and tests
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '18'
cache: 'npm'
cache-dependency-path: |
frontend/package-lock.json
e2e-tests/package-lock.json
# Grant execute permissions
- name: Grant execute permission for gradlew
run: chmod +x backend/gradlew
# Install frontend dependencies (required by E2E test)
- name: Install frontend dependencies
run: |
cd frontend
npm ci
# Install E2E test dependencies
- name: Install E2E test dependencies
run: |
cd e2e-tests
npm ci
# Install Playwright browsers
- name: Install Playwright Chromium
run: |
cd e2e-tests
npx playwright install chromium
# Run E2E tests
- name: Run E2E QA validation tests
run: |
cd e2e-tests
npm test
# Upload screenshots on failure or success
- name: Upload screenshots
if: always()
uses: actions/upload-artifact@v4
with:
name: e2e-screenshots
path: /tmp/qa-screenshot-*.png
if-no-files-found: warn
# Upload test logs on failure
- name: Upload logs on failure
if: failure()
uses: actions/upload-artifact@v4
with:
name: e2e-logs
path: e2e-tests/*.log
if-no-files-found: ignore