Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
vasilyu1983 avatar

Qa Testing Ios

  • 174 installs
  • 73 repo stars
  • Updated July 13, 2026
  • vasilyu1983/ai-agents-public

Helps with testing & qa tasks.

About

qa-testing-ios is a Claude Code skill for testing & qa. It helps solo builders move faster with AI-assisted development.

  • qa-testing-ios
  • Testing & QA
  • AI-coding skill

Qa Testing Ios by the numbers

  • 174 all-time installs (skills.sh)
  • +10 installs in the week ending Aug 5, 2026 (Skillselion tracking)
  • Ranked #841 of 2,152 Testing & QA skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/vasilyu1983/ai-agents-public --skill qa-testing-ios

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs174
repo stars73
Last updatedJuly 13, 2026
Repositoryvasilyu1983/ai-agents-public

What it does

Helps with testing & qa tasks.

Files

SKILL.mdMarkdownGitHub ↗

QA Testing (iOS)

Use xcodebuild + Xcode Simulator (simctl) to build, run, and stabilize iOS tests.

Primary docs: XCTest, Swift Testing, simctl, Xcode testing

Inputs to Confirm

  • Xcode entrypoint: -workspace or -project
  • -scheme (and optional -testPlan)
  • Destination(s): simulator name + iOS runtime (or OS=latest), and whether real devices are required
  • UI-test hooks: launch arguments/env toggles (stubs, demo data, auth bypass, disable animations)
  • Artifact needs: xcresult, coverage, screenshots/video, logs

Quick Commands

TaskCommand
List schemesxcodebuild -list -workspace MyApp.xcworkspace
List simulatorsxcrun simctl list devices
List devices (USB)xcrun xctrace list devices
Boot simulatorxcrun simctl boot "iPhone 15 Pro"
Wait for bootxcrun simctl bootstatus booted -b
Build appxcodebuild build -scheme MyApp -sdk iphonesimulator
Install appxcrun simctl install booted app.app
Run testsxcodebuild test -scheme MyApp -destination 'platform=iOS Simulator,name=iPhone 15 Pro,OS=latest' -resultBundlePath TestResults.xcresult
Run tests (device)xcodebuild test -scheme MyApp -destination 'platform=iOS,id=<UDID>' -resultBundlePath TestResults.xcresult
Reset simulatorsxcrun simctl shutdown all && xcrun simctl erase all
Take screenshotxcrun simctl io booted screenshot screenshot.png
Record videoxcrun simctl io booted recordVideo recording.mov

Workflow

1. Resolve build inputs (workspace/project, scheme, testPlan, destinations). 2. Make simulator state repeatable: shutdown/erase as needed, boot, and wait for boot. 3. Run tests with artifacts enabled (-resultBundlePath); parallelize and retry only when appropriate. 4. Triage failures from the xcresult bundle; confirm flakes with repetition; quarantine with an owner and reproduction steps.

xcodebuild Patterns

  • Select tests to reproduce: -only-testing:TargetTests/ClassName/testMethod and -skip-testing:TargetTests/FlakyClass.
  • Prefer test plans for large suites: -testPlan <plan> (keeps device/config/runs consistent).
  • Enable parallel testing when suites are isolation-safe: -parallel-testing-enabled YES (+ -maximum-parallel-testing-workers N).
  • Always write a result bundle in automation: -resultBundlePath TestResults.xcresult.
  • For reruns, split build and test: xcodebuild build-for-testing ... then xcodebuild test-without-building ....
  • Inspect results locally: open TestResults.xcresult or xcrun xcresulttool get --path TestResults.xcresult --format json.

Flake Triage (Repetition and Retry)

  • Prefer repetition to prove flake rate before adding retries.
  • Use targeted reruns before suite-wide retries.

Common patterns (flags vary by Xcode version):

  • Retry failing tests once in CI: -retry-tests-on-failure -test-iterations 2
  • Measure flakiness until first failure: -test-iterations 50 -test-repetition-mode until-failure
  • Run a single test repeatedly: -only-testing:TargetTests/ClassName/testMethod -test-iterations 20

Testing Layers

LayerFrameworkScope
UnitXCTest / Swift TestingBusiness logic (fast)
SnapshotXCTest + snapshot libsView rendering
IntegrationXCTestPersistence, networking
UIXCUITestCritical user journeys

Device Matrix

  • Default: simulators for PR gates; real devices for release
  • Cover: one small phone, one large phone, iPad if supported
  • Add OS versions only for multiple major release support

Flake Control

Use these defaults unless the project requires otherwise:

  • Disable or reduce animations in UI-test builds.
  • Fix locale/timezone (via launch arguments or app-level configuration).
  • Stub network at the boundary (avoid real third-party calls in UI tests).
  • Reset app state between tests (fresh install, deep-link reset, or explicit teardown).
  • Prefer state-based waits (waitForExistence, expectations) over sleeps.
  • Pre-grant/reset permissions where possible (simulators): xcrun simctl privacy booted grant ....

CI Integration (GitHub Actions)

name: iOS CI
on: [push, pull_request]
jobs:
  test:
    runs-on: macos-15
    steps:
      - uses: actions/checkout@v4
      - uses: maxim-lobanov/setup-xcode@v1
        with:
          xcode-version: "16.0"
      - run: |
          set -euo pipefail
          xcodebuild test \
            -scheme MyApp \
            -sdk iphonesimulator \
            -destination 'platform=iOS Simulator,name=iPhone 15 Pro,OS=latest' \
            -resultBundlePath TestResults.xcresult
      - uses: actions/upload-artifact@v4
        if: always()
        with:
          name: test-results
          path: TestResults.xcresult

Do / Avoid

Do

  • Make UI tests independent and idempotent
  • Use test data builders and dedicated test accounts
  • Collect xcresult bundles on failure
  • Use accessibilityIdentifier, not labels

Avoid

  • Relying on test ordering or global state
  • UI tests requiring real network
  • Thread.sleep() for synchronization
  • Accepting AI-proposed selectors without validation

Resources

ResourcePurpose
references/swift-testing.mdSwift Testing framework
references/simulator-commands.mdComplete simctl reference
references/xctest-patterns.mdXCTest/XCUITest patterns
references/xcuitest-patterns.mdXCUITest UI testing patterns
references/snapshot-testing-ios.mdVisual snapshot testing
references/ios-ci-optimization.mdCI pipeline optimization

Templates

TemplatePurpose
assets/template-ios-ui-test-stability-checklist.mdStability checklist

Related Skills

SkillPurpose
software-mobileiOS development
qa-testing-strategyTest strategy
qa-testing-mobileCross-platform mobile

Fact-Checking

  • Use web search/web fetch to verify current external facts, versions, pricing, deadlines, regulations, or platform behavior before final answers.
  • Prefer primary sources; report source links and dates for volatile information.
  • If web access is unavailable, state the limitation and mark guidance as unverified.

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.