Maestro Intro (#406)

Introducing Maestro workflows for UX testing
This commit is contained in:
Ritesh Shukla
2025-06-04 01:44:36 +05:30
committed by GitHub
parent 2abf6a9266
commit 9e72f2a7eb
5 changed files with 82 additions and 0 deletions

55
.github/workflows/maestro-test.yml vendored Normal file
View File

@@ -0,0 +1,55 @@
name: Run Maestro Tests
on:
workflow_dispatch:
jobs:
run-maestro-tests:
runs-on: ubuntu-latest
env:
JELLYFIN_TEST_ADDRESS: ${{ secrets.JELLYFIN_TEST_ADDRESS }}
JELLYFIN_TEST_USERNAME: ${{ secrets.JELLYFIN_TEST_USERNAME }}
steps:
- name: 🛒 Checkout
uses: actions/checkout@v4
- name: 🖥 Setup Node 20
uses: actions/setup-node@v4
with:
node-version: 20
- name: Installing Maestro
shell: bash
run: export MAESTRO_VERSION=1.40.0; curl -Ls "https://get.maestro.mobile.dev" | bash
- name: Set up JDK 17
if: ${{ inputs.install-java == 'true' }}
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'zulu'
- name: Enable KVM group perms
shell: bash
run: |
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
sudo udevadm control --reload-rules
sudo udevadm trigger --name-match=kvm
- name: Run e2e tests
id: run-tests
uses: reactivecircus/android-emulator-runner@v2
with:
api-level: 24
arch: x86
ram-size: '8192M'
heap-size: '4096M'
disk-size: '10G'
cores: '4'
disable-animations: false
avd-name: e2e_emulator
script: |
maestro test maestro-tests/flow.yaml \
--env server_address=${{ env.JELLYFIN_TEST_ADDRESS }} \
--env username=${{ env.JELLYFIN_TEST_USERNAME }}