11 / 66 · 09 Mobile & Cross-Platform Testing · Device Coverage Matrix← prev⊞ allnext →☰ Read as one page
2.5Mapping Matrix to CI Pipeline
# .github/workflows/mobile-matrix.yml
name: Mobile Test Matrix
on:
push:
branches: [main]
pull_request:
jobs:
tier-1-tests:
# Run on every PR
strategy:
matrix:
include:
- device: "iPhone 15"
os_version: "18"
platform: "ios"
- device: "Samsung Galaxy S24"
os_version: "14.0"
platform: "android"
- device: "Samsung Galaxy A54"
os_version: "14.0"
platform: "android"
steps:
- run: pytest tests/mobile/ --device="${{ matrix.device }}"
tier-2-tests:
# Run weekly on schedule
if: github.event_name == 'schedule'
strategy:
matrix:
include:
- device: "iPhone 13"
os_version: "17"
- device: "Google Pixel 8"
os_version: "14.0"
- device: "Xiaomi Redmi Note 13"
os_version: "14.0"
steps:
- run: pytest tests/mobile/ -m "critical_path" --device="${{ matrix.device }}"
tier-3-tests:
# Run monthly
if: github.event_name == 'schedule' && github.event.schedule == '0 2 1 * *'
strategy:
matrix:
include:
- device: "iPhone SE"
os_version: "17"
- device: "Samsung Galaxy A14"
os_version: "13.0"
steps:
- run: pytest tests/mobile/ -m "smoke" --device="${{ matrix.device }}"