Marteso Docs
Screenshot automation
Run your App Store screenshot pipeline automatically with XCUITest, device framing, captions, and localization.
Requirements
- A native Swift iOS app. React Native and Flutter are not supported because the pipeline requires XCUITest.
- A GitHub account with a repository containing UI tests for your app.
- App Store Connect connected in Marteso.
How it works
When the pipeline runs, Marteso runs your XCUITest UI test suite, captures screenshots at each snapshot point, applies device framing, generates captions in every App Store language, and delivers a finished localized screenshot set.
You write one UI test. Marteso delivers screenshots for all languages, framed for every device size.
Step 1: Connect GitHub
Go to Settings -> Integrations -> GitHub and authorize Marteso.
Step 2: Select your repo
Under your app in Marteso, go to Screenshots -> Pipeline and select the GitHub repository that contains your UI tests. Marteso installs a webhook on that repo automatically.
Step 3: Write a UI test
Your XCUITest must navigate to each screen you want to screenshot and call Marteso's snapshot helper at the right moment. Follow the Marteso UI test guide for the exact API.
Step 4: Trigger a run
Trigger a run manually from the Screenshots tab or automatically by pushing a commit or opening a pull request on the connected branch. Marteso posts a GitHub commit status so results appear directly in your pull request.
Step 5: Review and export
Review the screenshots in Marteso. Export when ready; the set is ready to attach to your App Store version.
Notes
The pipeline runs on Marteso's build server. Localized captions are generated automatically in all supported App Store languages. If the test fails, Marteso reports the failure as a GitHub commit status and shows logs in the Screenshots tab.